127

I'm trying to recursively compare two Subversion working copy folders using WinMerge.

Unfortunately, WinMerge displays lots of differencing files inside of the subversion control folders (.svn or _svn).

Is it possible to somehow exclude the subversion folders from the comparison? Or is there another (free) diff-tool which is able to do this?

StackzOfZtuff
  • 2,534
  • 1
  • 28
  • 25
M4N
  • 94,805
  • 45
  • 217
  • 260

3 Answers3

128

Try making a Filefilter

WinMerge handles this just fine. You want to create and use a Filter. Under Tools | Filters... | Filefilters, create a new filter or modify an existing one.

It will look like this:

## Ignore Java class and jar files
f: \.class$
f: \.jar$

## Ignore subversion housekeeping directories
d: \\.svn$
d: \\._svn$

Save it, then when selecting items to merge, select the filter you defined from the Select Files or Folders dialog box. Bonus points: It will save this and use it as a default for future merges.

Greg
  • 2,476
  • 4
  • 22
  • 28
  • 10
    Thanks a lot! I discovered that there is even a predefined filter to exclude source control files and folders. – M4N Sep 25 '09 at 13:30
  • 1
    Hi Martin, you might want to accept 4h24d's answer as well since it is simpler than this and appropriate and thus has been voted better so far. – chiccodoro May 28 '10 at 12:47
  • 2
    Better filter "\\\.svn$" (predefined filter) so you match '.' and not before 'svn'. – Werner Henze Aug 18 '15 at 12:29
89

Try Builtin File Filter

WinMerge (Version 2.12.4) already includes a filter to exclude source control files and directories, and it's called Exclude Source Control.

It works for Subversion, CVS, Git, Bazaar and Mercurial, and it doesn't require you to create a filter, you just have to apply it during the comparison.

djule5
  • 2,722
  • 2
  • 19
  • 19
  • 4
    thanks for the information. i would like to avoid selecting everytime i compare. is there anyway we can make it apply "Exclude Source control" files by default? – Mahes Sep 16 '10 at 14:48
  • 2
    I wasn't getting this option in a fresh install when I selected 2 folders and clicked 'Compare'. To enable it I had to select one folder, click 'Compare...' which shows a dialog with some options for filters. Here I selected the second folder and the 'Exclude Source Control' filter, and it worked. The filter is saved, so new if I just select 2 folders and click 'Compare' the filter is applied without the dialog. – Liam Aug 12 '15 at 20:55
26

Uncomment some lines in builtin filefilter

WinMerge (Version 2.12.4) already includes a filter but (at least in my installation) the filters for Subversion, Git and Bazaar were commented out.

Navigate here: Tools | Filters | Filefilters | Exclude Source Control (double click to edit)

Edit the lines to look like this:

d: \\.svn$ ## Subversion working copy
d: \\_svn$  ## Subversion working copy ASP.NET Hack
d: \\cvs$   ## CVS control directory
d: \\.git$ ## Git directory
d: \\.bzr$ ## Bazaar branch
d: \\.hg$ ## Mercurial repository
Community
  • 1
  • 1
Roberto
  • 1,175
  • 10
  • 9