xxdiff with mercurial

Matt Mackall mpm at selenic.com
Mon Feb 11 19:34:56 CST 2008


On Mon, 2008-02-11 at 16:40 -0500, Martin Blais wrote:
> Hello Mercurial devs,
> 
> I'm the author of xxdiff. I have switched to using Mercurial
> for some of my projects and I absolutely adore it. I have
> thus written a small Python wrapper script to set as the
> program to be run to resolve conflicts when merging. The
> script is called xx-hg-merge and can be found in the latest
> xxdiff snapshot, it behaves the way the Mercurial expects
> the graphical merge program to work (exit status, stores the
> result in the left filename).

We've got a new merge tool infrastructure in mainline which supports
xxdiff out of the box. Take a look at contrib/mergetools.hgrc, which
we're recommending installers add to the global hg configuration. The
xxdiff lines from that are:

 xxdiff.args=--show-merged-pane --exit-with-merge-status --title1 local
--title2 base --title3 other --merged-filename $output --merge $local
$base $other
 xxdiff.gui=True
 xxdiff.priority=-8

Right now, there's an implicit "xxdiff.premerge = True" which calls the
internal merge tool first, then calls the external one only if there are
conflicts.

> In addition, it invokes xxdiff
> in decision mode, and this case is exactly what decision
> mode was built to handle (you press "A" to accept the
> changes, "R" to reject them, and "M" to accept the
> selections).  Note that you will need to install xxdiff
> Python libs in order to use it (xxdiff comes with support to
> invoke it in various ways.)

What's this about the xxdiff Python libs? Is decision mode not a
command-line switch?

-- 
Mathematics is the supreme nostalgia of our time.



More information about the Mercurial mailing list