3 ms·
Git supports history rewriting so 1 isn't true. Git uses hashes for "unique ids" hashes aren't unique just low probability of collision, so 3 is also not true.
by stonemetal12 4y ago
Git supports history rewriting so 1 isn't true. Git uses hashes for "unique ids" hashes aren't unique just low probability of collision, so 3 is also not true.
Having run into issues that appear to be caused by 3 not being true, I don't see that as a theoretical issue.
- stu2b50 4y ago1 is true. When git is “rewriting” history it’s actually creating a new commits and moving the branch pointer over. Until the gc reaps them, you can absolutely git checkout the hash of any of the rewritten history and it’s still there, same as you left it. You can even move the branch pointer back, undoing the history rewrite.
- stonemetal12 4y agoSo when I do a pull I get their un-rewritten history? Just because they have a short undo buffer doesn't make modifiable history immutable.