WinMergeでSVNフォルダーを無視する方法


113

WinMergeを使用して2つのSubversion作業コピーフォルダーを再帰的に比較しようとしています。

残念ながら、WinMergeは、subversionコントロールフォルダー(.svnまたは_svn)内に多数の差分ファイルを表示します。

比較から何らかの方法でsubversionフォルダーを除外することは可能ですか?または、これを実行できる別の(無料の)diffツールがありますか?

回答:


111

Filefilterを作ってみる

WinMergeはこれをうまく処理します。フィルターを作成して使用したい。でTools | Filters... | Filefilters、新しいフィルタを作成するか、既存のフィルタを変更します。

次のようになります。

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

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

保存して、マージするアイテムを選択するときに、Select Files or Foldersダイアログボックスから定義したフィルターを選択します。ボーナスポイント:これを保存し、将来のマージのデフォルトとして使用します。


10
どうもありがとう!ソース管理ファイルとフォルダーを除外するための定義済みフィルターさえあることを発見しました。
M4N 2009

1
こんにちはマーティン。4h24dの回答もこれよりも単純で適切であり、これまでのところより良い投票が行われているため、4h24dの回答も受け入れることをお勧めします。
チッコドロ

フィルター「\\\。svn $」(定義済みフィルター)を改善して、「。」と一致 'svn'の前の<任意の文字>ではありません。
Werner Henze 2015

84

組み込みファイルフィルターを試す

WinMerge(バージョン2.12.4)には、ソース管理のファイルとディレクトリを除外するフィルターがすでに含まれており、これはExclude Source Controlと呼ばれています。

Subversion、CVS、Git、Bazaar、Mercurialで機能し、フィルターを作成する必要はありません。比較中にフィルターを適用するだけです。


4
情報のおかげで。比較するたびに選択することは避けたいです。とにかく、デフォルトで「Exclude Source control」ファイルを適用できるようにすることはできますか?
Mahes

1
2つのフォルダを選択して[比較]をクリックしたときに、フレッシュインストールでこのオプションが表示されませんでした。これを有効にするには、1つのフォルダーを選択する必要がありました。「比較...」をクリックすると、フィルターのオプションがいくつかあるダイアログが表示されます。ここでは、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

フィルター「\\\。svn $」(定義済みフィルター)を改善して、「。」と一致 'svn'の前の<任意の文字>ではありません。
Werner Henze 2015
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.