Well, at least this particular problem can’t happen to hg because it uses a completely different format for transfer (bundles) and for storage (revlogs), and unconditionally checks hashes before adding revisions to a revlog.
Whenever I read stuff about how Git actually works technically, I’m always reminded of a quote from Firefly: “Well, my days of not taking you seriously are certainly coming to a middle.”
Well, at least this particular problem can’t happen to hg because it uses a completely different format for transfer (bundles) and for storage (revlogs), and unconditionally checks hashes before adding revisions to a revlog.
http://inversethought.com/hg/mercurial-crew/file/tip/mercurial/revlog.py#l1400
Whenever I read stuff about how Git actually works technically, I’m always reminded of a quote from Firefly: “Well, my days of not taking you seriously are certainly coming to a middle.”
At least this might get fixed now. Maybe.