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

发布于 2024-08-05 14:33:56 字数 158 浏览 8 评论 0原文

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

不幸的是,WinMerge 在颠覆控制文件夹(.svn_svn)内显示大量差异文件。

是否可以以某种方式从比较中排除颠覆文件夹?

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?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

塔塔猫 2024-08-12 14:33:56

尝试制作一个 Filefilter

WinMerge 可以很好地处理这个问题。您想要创建并使用过滤器。在工具|下过滤器... | Filefilters,创建一个新的过滤器或修改现有的过滤器。

它看起来像这样:

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

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

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

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.

长发绾君心 2024-08-12 14:33:56

尝试内置文件过滤器

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

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

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.

浪漫人生路 2024-08-12 14:33:56

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

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

导航至此处:工具 |过滤器|文件过滤器 |排除源代码管理(双击进行编辑)

编辑这些行,如下所示:

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

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
泼猴你往哪里跑 2024-08-12 14:33:56

您可以在选择文件对话框中指定最新版本:

在此处输入图像描述

请参阅 https://github.com/WinMerge/winmerge/discussions/1571

n the latest versions you can specify on the Select Files dialog:

enter image description here

See https://github.com/WinMerge/winmerge/discussions/1571

凉墨 2024-08-12 14:33:56

不幸的是,当从命令行使用 WinMerge 时,内置版本控制过滤器不起作用。
查看 WinMerge 帮助:
使用过滤器 ->使用文件过滤器 ->文件过滤器语法 1.2。文件掩码语法和示例

以下内容帮助我跳过 .git 目录:

WinMergeU.exe /f '!.git\'  dir_1  dir_2

Unfortunately, the built-in version control filter didn't work when using WinMerge from a command line.
Check in WinMerge Help:
Using Filters -> Using file filters -> File filter syntax 1.2. File mask syntax and example

The following worked for me to skip a .git directory:

WinMergeU.exe /f '!.git\'  dir_1  dir_2
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文