2009-09-25 145 views
103

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

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

Subversionフォルダを何とか除外して比較できますか?または、これを行うことができる別の(無料の)差分ツールがありますか?

答えて

98

Filefilterを作成してみてください

WinMergeはこれをうまく処理します。 Filterを作成して使用したいとします。 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ダイアログボックスから定義したフィルタを選択します。ボーナスポイント:これを保存し、将来のマージのためのデフォルトとして使用します。

+9

どうもありがとう!私は、ソースコントロールファイルとフォルダを除外するための定義済みのフィルタさえあることを発見しました。 – M4N

+1

こんにちはマーティン、4h24dの回答を受け入れることもできます。なぜなら、これはこれより簡単で適切であり、今までより良い投票が行われているからです。 – chiccodoro

+0

"\\\。svn $"(定義済みのフィルタ)を使用すると、 "。 'svn'の前にはありません。情報をお寄せいただきありがとうございます。 –

79

組み込みファイルフィルタに

を試してみてくださいWinMergeの(バージョン2.12.4)は、すでにソース制御ファイルやディレクトリを除外するfilterを含み、ソースコントロールを除外すると呼ばれています。

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

+4

私は毎回私が比較するのを避けたいと思う。とにかくデフォルトで「ソースコントロールを除外」ファイルを適用させることができますか? – Mahes

+0

2つのフォルダを選択して「比較」をクリックしたときに、新しくインストールしたときにこのオプションが表示されませんでした。それを有効にするには、フォルダを1つ選択しなければならなかったので、[比較...]をクリックして、フィルタのオプションを含むダイアログを表示します。ここでは、2番目のフォルダと「除外ソースコントロール」フィルタを選択していました。フィルターが保存されるので、2つのフォルダーを選択して「比較」をクリックするだけで、フィルターはダイアログなしで適用されます。 – Liam

19

のコメントを外し、組み込みのFileFilterでいくつかの行

WinMergeの(バージョン2.12.4)すでにフィルタが、(少なくとも私のインストールで)が含まれたSubversion、Gitリポジトリとバザーのためのフィルタがコメントアウトされました。

ここに移動します。このように見て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 
+0

フィルタ「\\\。svn $」(定義済みのフィルタ)を使用すると、「。 'svn'の前にはありません。 –

関連する問題