In an earlier post, I described my experience merging changes with Mercurial 0.9.5 and Meld 220.127.116.11 on Ubuntu 8.04.
Things have changed in Ubuntu 8.10, which ships Mercurial 1.0.1. Now Meld displays your version of the file on the left, the other version on the right, and the base version (from which yours and the other are descended) in the middle.
Here it is handling the Merging conflicting changes example from the hg book:
Your job is to reconcile the conflicts between your version on the left and the other version on the right, turning your version on the left into the result of the reconciliation, which you then save to your working directory.
I understand why it can be useful to show the base version, and I think it’s ok to use the same pane to show both your version and the final result (although kdiff3 provides a fourth pane beneath these three for the latter, which seems better).
But I don’t understand why the base version is in the middle, given that one’s primary task in this situation is to compare the differences between the two versions on either side of the window, copying changes from one to the other as needed. Putting another file in the middle just gets in the way of that process (which is presumably why kdiff3 puts the base version on the left and your version in the middle according to the screenshot in the aforementioned example in the hg book).
In fact, I frequently find myself starting a merge by copying the other version of the file into the base version in its entirety. That destroys my ability to refer to the base version, but it places the other version and my version side by side, at which point it’s much easier to compare the two and edit my version accordingly:
But maybe I’m missing the point or misusing the tool, and there’s some valid reason for the way Mercurial uses Meld. Can someone tell me what it is?