Search code examples
tortoisesvnwinmerge

How to use WinMerge instead of TortoiseMerge when comparing a revision with the working copy


I like using WinMerge instead of TortoiseMerge with TortoiseSVN for comparing changes between separate revisions of a file. I can configure this for most things in the TortoiseSVN settings (context menu > "TortoiseSVN" > "Settings" > "Diff Viewer"):

enter image description here

However, when I want to compare files in a particular revision against the those in the working copy, it uses TortoiseMerge. To see what I mean, go to the TortoiseSVN log viewer from the working copy: right-click in the working copy folder, select "TortoiseSVN" > "Show log", right-click on a prior revision, and select "Compare with working copy". Then, double-click the file of interest in the list of "file patches" that appears.

Is there any way to get it to use WinMerge instead of TortoiseMerge for these cases?


Solution

  • Sorry, no. Because WinMerge is not able to apply patch files.

    When you do a "Compare with working copy", TortoiseSVN creates a unified diff (also known as a patch) between the selected revision and the working copy. Then it starts TortoiseMerge, telling it to apply that patch to the working copy. That's why in this case TortoiseMerge is started, not WinMerge: it's not really a diff that is done but a merge.