だから、誰かが気づいたかどうかはわかりませんが、VS2012に同梱されている新しいマージツールは最高です。私は最近、ソース管理のためにGitに移動し、VS2012をデフォルトのdifftool/mergetoolとして設定できるようにしたいと考えています。
これを行う方法に関する提案はありますか?可能であれば、新しいインスタンスではなく、アクティブなVS2012ウィンドウで差分/マージを開始したいと思います。
Visual Studioで Git Source Control Provider を使用している場合、 この機能 が実装されており、バージョン1.0.0以降で利用可能です。
または Microsoft'sgit用のツール を使い始めると、組み込みのdiffツールも使用されます。 screenshots の一部からは、2方向にマージされ、結果が下部に表示されるようです。
この記事 これを行う方法を説明しています。私はこれを試してみましたが、うまくいきます。私の使用法では、差分はVisual Studioの既存のインスタンスで開かれました。
[diff]
tool = vsdiffmerge
[difftool]
Prompt = false
[difftool "vsdiffmerge"]
cmd = '"C:/Program Files (x86)/Microsoft Visual Studio 11.0/Common7/IDE/vsdiffmerge.exe"' "$LOCAL" "$REMOTE" //t
keepbackup = false
trustexitcode = true
[merge]
tool = vsdiffmerge
[mergetool]
Prompt = false
[mergetool "vsdiffmerge"]
cmd = '"C:/Program Files (x86)/Microsoft Visual Studio 11.0/Common7/IDE/vsdiffmerge.exe"' "$REMOTE" "$LOCAL" "$BASE" "$MERGED" //m
keepbackup = false
trustexitcode = true
または、%VSINSTALLDIR%
を使用して、開いたコマンドラインに一致するVisual Studioのバージョンを常に参照します(これは、Visual Studioコマンドプロンプトショートカットを使用するか、vsvars32.bat
を手動で呼び出すことにより、Visual Studio環境がセットアップされている場合にのみ機能します):
[diff]
tool = vsdiffmerge
[difftool]
Prompt = false
[difftool "vsdiffmerge"]
cmd = '"%VSINSTALLDIR%Common7/IDE/vsdiffmerge.exe"' "$LOCAL" "$REMOTE" //t
keepbackup = false
trustexitcode = true
[merge]
tool = vsdiffmerge
[mergetool]
Prompt = false
[mergetool "vsdiffmerge"]
cmd = '"%VSINSTALLDIR%Common7/IDE/vsdiffmerge.exe"' "$LOCAL" "$REMOTE" "$BASE" "$MERGED" //m
keepbackup = false
trustexitcode = true
解答済みとしてマークされたソリューションは私にはうまくいきませんでしたが、これはうまくいきました(パスにvsdiffmerge.exeの場所がありました-それに関係があるかどうかわかりません):
[diff]
tool = vsdiffmerge
guitool = vsdiffmerge
[difftool]
Prompt = true
[difftool "vsdiffmerge"]
cmd = $LOCAL $REMOTE /t
keepbackup = false
trustexistcode = true
path = C:/Program Files (x86)/Microsoft Visual Studio 12.0/Common7/IDE/vsDiffMerge.exe
[merge]
tool = vsdiffmerge
[mergetool]
Prompt = false
[mergetool "vsdiffmerge"]
cmd = $REMOTE $LOCAL $BASE $MERGED /m
keepbackup = false
trustexitcode = true
path = C:/Program Files (x86)/Microsoft Visual Studio 12.0/Common7/IDE/vsDiffMerge.exe