you got your merge tool in my diff

In a past I had recommended using WinMerge as a replacement diff and merge tool in Visual Studio. I simply linked to a post that showed the set up.

Since then my preferences have shifted toward kdiff3, but mostly as a merge tool. I still favor WinMerge for simple diffs as I can set it up to ignore all whitespace changes and get a cleaner view of what really changed between those two versions of a file. I may be missing something in kdiff3 configurations but I couldn’t find a way to make that happen. However for merges kdiff3, with it’s 3 way view and common sense commands, makes it incredible for complex merges. So now I use the “right” tool for each job. Another plus is that visually I can always easily tell if I am doing a simple diff or attempting a merge.

Every time I have to set this up on a new machine I have to search for the command line arguments to pass. So, I basically am just posting this so I can find it next time.

Now if I can only get Git to use the same combination. So far it seems friendly to kdiff3 but not WinMerge…


WinMerge as diff tool

In Visual Studio navigate to Tools>Options>Source Control>TFS>Configure User Tools. Configure your merge tool as shown here

c:\program Files (x86)\winmerge\winMergeU.exe
/e /u /wl /wr /dl %6 /dr %7 %1 %2


kdiff3 as merge tool

Configure your merge tool as shown here

c:\program Files (x86)\kDiff3\kdiff3.exe
%3 --fname %8 %2 --fname %7 %1 --fname %6 -o %4



About me

.NET developer in upstate NY, USA
Current focus technologies: WPF, WCF
Intrigued by: Functional programming ala F#, Code Analysis, Math
Hobbies: this blog, go figure

Month List