Gregory Szorc wrote: > It is effectively impossible to round-trip between Git and Mercurial when > file copies are involved. This is because Mercurial's filelog hashes > include copy metadata and the parent nodes. Git's blob hashes, by contrast, > are effectively content only. When you convert from Mercurial to Git, it > will drop copy metadata (because Git doesn't track it explicitly). Then > when you convert back to Mercurial, the copies have to be detected "just > right" by hg-git for the hashes to align. Furthermore, the files have to be > reintroduced in the same order, or the filelog parents may not align and > the hashes may diverge. If a repo isn't linear, there's a non-zero chance > of that happening.
Got it. > It is best to have a single canonical repo and replicate from that. > Attempting "syncing" from multiple discrete repos will only lead to > divergence. Sadly, that's not an option. We're just going to have to deal with the breakage, until such time as we can avoid the git intermediary. Thanks, Danek _______________________________________________ Mercurial-devel mailing list Mercurial-devel@mercurial-scm.org https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel