如何配置visual studio 2017以使用外部difftool和mergetool

时间:2017-10-15 09:50:30

标签: git visual-studio visual-studio-2017 git-difftool

我在git全局配置中为difftool和mergetool配置了DiffMerge。我读到Visual Studio尊重全局git配置的这些设置。这是我的git配置: -

git config --global --list difftool.DiffMerge.cmd='C:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe' $LOCAL $REMOTE merge.tool=DiffMerge mergetool.DiffMerge.cmd='C:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe' -merge -result=$PWD/$MERGED $PWD/$LOCAL $PWD/$BASE $PWD/$REMOTE mergetool.DiffMerge.trustexitcode=true user.name=masiboo user.email=masiboo@gmail.com

但是如果尝试从visual studio看到diff,它会打开vs自己的diff工具。如何打开或配置打开外部工具?谢谢advanc!

2 个答案:

答案 0 :(得分:8)

我也花了一会儿。

视觉工作室2017"似乎有助于"你,如果出现问题,它就会启动visual studio diff。

这是我工作的.gitconfig设置:

[diff]
    tool = winmerge

[difftool "winmerge"]  
  trustExitCode = true
  cmd = \"C:\\Program Files (x86)\\WinMerge\\WinMergeU.exe\" -u -e \"$LOCAL\" \"$REMOTE\"

请注意,visual studio似乎使用diff工具设置插入存储库级别配置,在这种情况下,您需要清除存储库中的.git / config设置。

答案 1 :(得分:1)

要将VS代码用作差异工具,我将其添加到本地git配置文件中,可在VS2019中使用。

[diff]
    tool = vscode
[difftool "vscode"]
    cmd = "code --wait --diff \"$LOCAL\" \"$REMOTE\" "