121

我正在尝试使用 WinMerge 递归比较两个 Subversion 工作副本文件夹。

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

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

4

3 回答 3

116

尝试制作文件过滤器

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

它看起来像这样:

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

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

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

于 2009-09-25T13:27:22.107 回答
88

尝试内置文件过滤器

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

它适用于 Subversion、CVS、Git、Bazaar 和 Mercurial,并且不需要您创建过滤器,您只需在比较期间应用它即可。

于 2009-10-08T13:48:28.067 回答
25

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

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
于 2010-04-16T09:32:28.797 回答