26

当初の質問は、「WinMerge を TFS の比較およびマージ ツールとして設定するにはどうすればよいか」というものでした。ただし、TehOneがこのより一般的な形式の質問に回答したため、変更しています。

これはStackoverflowですでに尋ねられていたでしょうが。他の場所で答えを見つけましたが、ここで質問/回答しています。現在はコミュニティ wiki になっています。

4

3 に答える 3

33

これを行う方法を探していたとき、次の投稿が非常に貴重であることがわかりました: http://blogs.msdn.com/jmanning/articles/535573.aspx

于 2009-08-21T20:00:58.550 に答える
12

長い手順は、Rory Primrose のブログ投稿に記載されています

短い答えは、compare の引数リストは次のとおりです。

/x /e /ub /wl /dl %6 /dr %7 %1 %2

マージの引数リストは次のとおりです。

/x /e /ub /wl /dl %6 /dr %7 %1 %2 %4

Winmerge が 0 を返さない場合があり、TFS はマージがキャンセルされたと見なします。マージには、次のラッパー バッチ ファイルを使用する必要があります。

@rem winmergeFromTFS.bat
@rem 2007-08-01
@rem File created by Paul Oliver to get Winmerge to play nicely with TFS
@rem
@rem To use, tell TFS to use this command as the merge command
@rem And then set this as your arguments:
@rem  %6 %7 %1 %2 %4
"C:\Program Files\WinMerge\WinMerge.exe" /x /e /ub /wl /dl %1 /dr %2 %3 %4 %5
exit 0

次に、引数リストを次のように設定します。

%6 %7 %1 %2 %

出口0

于 2009-08-21T19:57:11.490 に答える
0

SourceGear DiffMerge の場合、デフォルトのコマンド ラインを次のように変更する必要があります。

C:\Program Files (x86)\SourceGear\Vault Client\sgdm.exe

SourceGear サポート フォーラムのこのスレッドと、@TehOne が言及した James Manning のブログでパラメーターを見つけましたが、そこで指定された引数が正しくなく、自動マージが逆に実行されます。つまり、古いコードが新しいコードを上書きします。 . 正しい引数は次のとおりです。

/m /t1=%6 /t2=%7 /t3=%8 /c=%9 %1 %3 %2 /r=%4

于 2013-07-10T15:04:59.767 に答える