How to use p4merge as the merge/diff tool for Mercurial?

Jay Stramel picture Jay Stramel · Sep 4, 2008 · Viewed 12.7k times · Source

Does anyone know how to setup Mercurial to use p4merge as the merge/diff tool on OS X 10.5?

Answer

Ry4an Brase picture Ry4an Brase · Oct 4, 2008

This will work for merging:

Place this into your ~/.hgrc (or, optionally, your Mercurial.ini on Windows):

[merge-tools]
p4.priority = 100
p4.premerge = True  # change this to False if you're don't trust hg's internal merge
p4.executable = /Applications/p4merge.app/Contents/MacOS/p4merge
p4.gui = True
p4.args = $base $local $other $output

Requires Mercurial 1.0 or newer. Clearly you'll need to update the path to that executable to reflect where you'd got p4merge installed.


You can't change what hg diff uses; but you can use the extdiff extension to create new diff commands that use the display you want.

So hg pdiff could run p4 merge, etc.