経緯
WinMerge はフォルダを指定して一度に再帰的に比較ができ、便利ですの♪
けれども、再帰的な比較はできないながら、インデントのみの変更は差分としない Visual Studio Code の diff をしばらくメインに使用したいですの。
git difftool でどちらも使用できましたら嬉しいですわ!
今回、これを実現できましたので、ノートいたします!
なお、環境は次となります。
- Visual Studio Code: 1.9.1
- WinMerge: 2.14.0.121+jp-121
今までの difftool 設定
以前投稿した通りの状態となっております。
設定方法
コマンドでの設定方法
- diff.tool の設定値について、git config に –add オプションをつけることにより、既存の設定を上書きすることなく追加することが可能だが、今回は上書きで問題ない。
difftool 設定に今までの winmerge の値が残っているため、git difftool -t winmerge
とすることによって切り替えることが可能。 - 文字列を囲むときは、シングルクォーテーション ‘ を使用する。
# git difftool 設定 # vscode をデフォルトの difftool に設定 git config --global diff.tool vscode # vscode の起動コマンドを設定 git config --global difftool.vscode.cmd 'code --wait --diff $LOCAL $REMOTE' # 設定の確認 git config --get-regexp diff
設定ファイル .gitconfig での設定方法
[diff] tool = vscode [difftool "winmerge"] path = C:/Program Files/WinMerge/winmergeu.exe cmd = "'C:/Program Files/WinMerge/winmergeu.exe' -r -u $LOCAL $REMOTE' [difftool "vscode"] cmd = code --wait --diff $LOCAL $REMOTE
使い方
# Visual Studio Code で差分を確認 git difftool # WinMerge ですべてのファイルの差分を一度に確認 git difftool -d -t winmerge
おわりに
次の公式ページが参考になりました!ありがとう存じます!
以上です。
「【Git】difftool を複数設定する方法」への1件の返信
[…] difftool を複数設定する方法 | oki2a24 […]