folding commits with renames generates conflicts

Cristian Vasile Mocanu cvmocanu at gmail.com
Fri May 16 08:41:57 UTC 2014


Hello,

I am a GIT user trying to learn Mercurial.
I like it better so far: it has nicer command line, it's faster on 
Windows, there is no more forced usage of GIT index, it's safer because 
of phases, it records rename metadata rather than guessing, etc.
But I hit an issue which is a deal-braker if I can't find a solution :(

My way of working is to use (local) commits as checkpoints and fix 
(prettify) the commits  later using GIT's interactive rebase or 
Mercurial's "histedit" extension. I usually do this just before pushing.

The problem is that quite often, when I fold a commit into the commit 
above, and there was a file rename involved, I get a conflict, and 
Mercurial asks: "use (c)hanged version or (d)elete?".
It looks like Mercurial can't apply changes to file which were renamed, 
which is strange since Mercurial has better metadata than GIT (GIT has 
to guess renames whereas Mercurial has the rename metadata so it doesn't 
have to guess).

I have 2 questions:
1) is this a Mercurial bug? If it is, is it reported?
2) is there a workaround?

Thank you,
Cristian Vasile Mocanu



More information about the Mercurial mailing list