対象
VSで標準のdiffツール(vsDiffMerge)が使いにくいと感じる方
やること
VS標準のdiffツールからWinMergeに変更する
前提
必要なツールはインストールされているものとする
準備
configファイルをサクラエディタを使用して編集できるようにする
※Vim操作慣れていれば行わなくてよし
コマンド
git config --global core.editor "'C:\Program Files (x86)\sakura\sakura.exe'"
※各自のインストール先のパスを指定する
本題
diffツールを変更する
コマンド
git config --global --edit
.gitconfigの編集内容
[diff]
tool = WinMerge
guitool = WinMerge
[difftool "WinMerge"]
path = C:/Program Files/WinMerge/WinMergeU.exe
cmd = \"C:/Program Files/WinMerge/WinMergeU.exe\" -e -ub -dl \"Base\" -dr \"Mine\" \"$LOCAL\" \"$REMOTE\"
[merge]
tool = WinMerge
[mergetool "WinMerge"]
path = C:/Program Files/WinMerge/WinMergeU.exe
cmd = \"C:/Program Files/WinMerge/WinMergeU.exe\" \"$MERGED\"
※path, cmdは各自のインストール先のパスを指定する
まとめ
configの修正でWinMergeにすることはできたものの、VS上の設定でできないものか、、、
参考
- WindowsでgitのdiffとmergeのツールをWinMergeに設定するメモ (Git, GitHub for Windows, WinMerge, difftool, mergetool) - いろいろ備忘録日記
- Git - Git の設定
補足
コマンドは全てコマンドプロンプトから実行しています。
グローバルで設定していますが、各リポジトリー毎に設定を行いたければ--globalオプションを外してください