Configuring different diff/merge tools for Team Foundation Version Control


Many of you probably know that you can specify your own diff/merge tool.  One thing that’s not mentioned on that documentation page is that you can specify * for the Extension field to change the default diff or merge tool.

James Manning recently put together a nice post on configuring different diff and merge tools, making it easier to properly configure the tool of your choice.  This is most useful for merge, where for v1 a number of other available tools offer a better experience than diffmerge.exe in the more complex cases.

Diff/Merge configuration in Team Foundation – Common command and argument values

One of the extensibility points we have in Team Foundation V1 is that you can configure any other diff and merge tools you want.  The purpose of this article is to start collecting the most common ones we know or heard about in a central place so people don’t have to figure these out on their own.

Comments (6)

  1. Charles Young has written an article on Team Foundation Server: Experiences with Team Build.

    The Visual…

  2. Julia says:

    I have successfully integrated Ellié Computing Merge with Team System.

    It does 3-way merge… I now use it instead of Beyond Compare.

  3. Taky vás nebaví merge tool od MS, který je součástí TFS? Použijte svůj oblíbený . Můj oblíbený je WinMerge

  4. Chris says:

    I’ve tried to use p4merge from perforce in TFS, but for merge operations I keep getting the error that one of the arguments is a file that doesn’t exist.  It works fine for diffing.

    I used Command: C:Program FilesPerforcep4merge.exe

    Arguments: %3 %1 %2 %4

    As best I can tell, this matches what p4merge expects (according to p4merge -h).  I looked in my temp folder where TFS pointed p4merge and there were only two files there.

    Manning’s blog doesn’t even mention p4merge…

  5. Chris says:

    After some investigation, I’ve discovered that p4merge requires the output file exist before it starts, and TFS fails to create this file.  I wrote a stub that creates the file and then calls p4merge and all is well.

  6. buckh says:

    Chris, I’m glad to hear you’ve figured it out.  I don’t have access to p4merge.

    Buck