如何在WinMerge中忽略SVN文件夹?

M4N*_*M4N 111 svn diff winmerge

我试图使用WinMerge递归比较两个Subversion工作副本文件夹.

不幸的是,WinMerge在subversion控制文件夹(.svn_svn)中显示了许多差异文件.

有可能以某种方式从比较中排除subversion文件夹吗?或者是否有其他(免费)差异工具能够做到这一点?

Gre*_*reg 109

尝试制作Filefilter

WinMerge处理这个很好.您想要创建和使用过滤器.在下Tools | Filters... | Filefilters,创建一个新过滤器或修改现有过滤器.

它看起来像这样:

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

## Ignore subversion housekeeping folders
d: \\.svn$
d: \\._svn$
Run Code Online (Sandbox Code Playgroud)

保存它,然后在选择要合并的项目时,从Select Files or Folders对话框中选择您定义的过滤器.奖励积分:它将保存此值并将其用作未来合并的默认值.

  • 非常感谢!我发现甚至有一个预定义的过滤器来排除源控制文件和文件夹. (10认同)
  • 更好地过滤“\\.svn$”(预定义过滤器),以便匹配“.” 而不是“svn”之前的<任何字符>。 (2认同)

dju*_*le5 83

尝试使用内置文件过滤器

WinMerge(版本2.12.4)已经包含一个用于排除源控制文件和目录的过滤器,它被称为Exclude Source Control.

它适用于Subversion,CVS,Git,Bazaar和Mercurial,它不需要您创建过滤器,您只需在比较期间应用它.

  • 谢谢你的信息.我想避免每次比较时选择.无论如何我们可以默认应用"排除源代码管理"文件吗? (4认同)
  • 当我选择 2 个文件夹并单击“比较”时,我没有在全新安装中获得此选项。要启用它,我必须选择一个文件夹,单击“比较...”,它会显示一个对话框,其中包含一些过滤器选项。在这里,我选择了第二个文件夹和“排除源代码管理”过滤器,它起作用了。过滤器已保存,所以如果我只选择 2 个文件夹并单击“比较”,则过滤器将在没有对话框的情况下应用。 (2认同)

小智 22

取消注释内置文件过滤器中的一些行

WinMerge(版本2.12.4)已经包含一个过滤器,但(至少在我的安装中)Subversion,Git和Bazaar的过滤器被注释掉了.

在这里导航:( Tools | Filters | Filefilters | Exclude Source Control双击编辑)

编辑线条如下所示:

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
Run Code Online (Sandbox Code Playgroud)