3 ms·
You can't rewrite history in git either. You can however make new commits that are different from the old commits somehow. A branch in git is basically just a
by j_baker 15y ago
You can't rewrite history in git either. You can however make new commits that are different from the old commits somehow. A branch in git is basically just a pointer to a set of immutable commits. http://hackerne.ws/item?id=2524993 http://hackerne.ws/item?id=2524993
- dchest 15y agoIt depends on what you mean by "history". Moving refs around is already "modifying history" in Fossil world.
- j_baker 15y agoI don't care what Fossil considers rewriting history. Rewriting history means altering a commit that has taken place in the past, which git can't do.
- dchest 15y agoWhat about branches? Tags? Git's fast-forward? Some people think of the whole DAG as history.
- jlouis 15y agoBranches and tags are just "Stick-it-notes" you attach to the DAG. They can be removed around at whim, but they only serve to mark a point in the DAG for your convenience. The GC process will kill parts of the DAG with no such branch/tag, but it only happens after some days by default. Were git able to rewrite history, it couldn't use SHA1 checksums as names for the content. Note that a rebase alters the SHA1 stack you have, so it is regarded as something different. But you can't do that easily with published stuff as it would render further work impossible. Fast forward is the recognition that a stick-it-note can be moved linearly ahead. You won't be rewriting history, you will be writing new history and then forget about the old. But it is still there should accidents happen.
- dchest 15y agoBranches and tags are just "Stick-it-notes" you attach to the DAG. According to Git. And not if it's a tag object. You won't be rewriting history, you will be writing new history and then forget about the old. This is getting ridiculous. Next we'll be talking about parallel universes.