0

我试图用 diff 2 个分支

git difftool master..presentation

命令。我尝试了 Meld 和 vsdiffmerge 但由于某种原因它们不起作用。该命令所做的只是反复询问我是否要使用当前的 difftool 来区分文件。如果我输入'y',它会打开相应的程序,就是这样,没有实际的差异发生。在 Meld 中,它仅显示带有 3 个选项的开始屏幕,而在 Visual Studio 中,它向我显示了没有打开代码选项卡的默认窗口。

这是我当前的 .gitconfig:

[diff]
    tool = meld
[difftool "vsdiffmerge"]
    cmd = 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/vsDiffMerge.exe' $LOCAL $REMOTE
    prompt = false
    trustExitCode = true
[difftool "meld"]
    cmd = 'A:/Development-Tools/Meld/Meld.exe'
    prompt = false

请注意,在进行合并时 vsDiffMerge 工作正常,它只是不适用于差异。

只需使用控制台差异

git diff master..presentation

工作得很好。

我使用最新版本的 Git、Meld 和 Visual Studio。有任何想法吗?

4

1 回答 1

1

向您的命令添加参数(不确定这是否有效):

[difftool "meld"]
    cmd = 'A:/Development-Tools/Meld/Meld.exe $LOCAL $MERGED $REMOTE'
    prompt = false

或者指定pathdiff 工具的而不是cmd配置变量:

[difftool "meld"]
    path = 'A:/Development-Tools/Meld/Meld.exe'
    prompt = false

请参阅git-difftool文档。

于 2016-07-18T00:09:44.793 回答