git difftool无法启动Beyond Compare

时间:2015-07-10 06:32:45

标签: git beyondcompare difftool

嗨,大家好我和git一起挣扎让Beyond Compare成为我的难度计。

我正在使用" Git For Windows",Windows 7 32位和Beyond Compare 4

$ git --version
git version 1.9.5.msysgit.1
$ git config --list

[diff]
tool = bc3

[difftool "bc3"]
path = c:/Program Files/Beyond Compare 4/bcomp.exe

[merge]
tool = bc3

[mergetool "bc3"]
path = c:/Program Files/Beyond Compare 4/bcomp.exe

现在我已经在这里和那里阅读了其他问题,并遵循以下说明:

  • 更改' bc3'用其他名称,即' abc3'或者' beyondcompare'
  • 命令:git difftool --tool = bc3 MyFile.java
  • 将.gitconfig中的' bc3'路径改为' c:\ Program Files \ Beyond Compare 4 \ bcomp.exe'
  • 将$ LOCAL $ REMOTE添加到路径

我已经意识到它总是启动默认的差异控制台查看器/工具(vimdiff,如果我没有错),尽管传递了上述参数' - tool = bc3&#39 ;或者' - 工具=任何名称',到' git difftool'命令。

最后,它适用于' git mergetool' ,在这种情况下,无法比较启动,你可以看到参数是相同的。

如果我忘记了某些内容或需要更多详细信息,请告知我们 感谢

"当我输入命令git difftool"

image

3 个答案:

答案 0 :(得分:2)

要在Git for Windows 1.9.5中将Beyond Compare 4配置为外部差异工具,请按照Scooter Software Using Beyond Compare with Version Control Systems页面上的说明进行操作。

在遵循配置说明后,在Beyond Compare中区分文件:

git difftool filename.ext

如果仍然无效,请确认c:\users\username\.gitconfig文件中的设置正确无误:

[diff]
    tool = bc3
[difftool "bc3"]
    path = c:/program files/beyond compare 4/bcomp.exe
[merge]
    tool = bc3
[mergetool "bc3"]
    path = c:/program files/beyond compare 4/bcomp.exe

如果仍然无法修复,请确保.git\config中没有特定于存储库的设置覆盖全局设置。

答案 1 :(得分:0)

您的git config --list输出很奇怪。我有名称 - 值对,没有节标题(省略不相关的属性):

diff.tool=bc3
difftool.bc3.path=c:/Program Files (x86)/Beyond Compare 3/bcomp.exe
merge.tool=bc3
mergetool.bc3.path=c:/Program Files (x86)/Beyond Compare 3/bcomp.exe

对我来说,Beyond Compare 3适用于git difftool <filename>,没有什么奇怪的选择。 Beyond Compare 4非常相似。

我的git版本几乎相同

git --version
git version 1.9.5.msysgit.0

也许您为另一个存储库设置了选项;如果git difftool出现diff -cc,您肯定没有将Beyond Compare配置为默认的差异工具。或者也许你的bcomp.exe正在采取行动。

答案 2 :(得分:0)

写入cohfig格式始终会更改。 这适用于Windows 10,VS 2019,Git 2.25

[merge]
    tool = BeyondCompare4
[diff]
    guitool = beyondcompare4
    tool = beyondcompare4
[core]
    autocrlf = false
    editor = \"C:\\Program Files\\Microsoft VS Code\\Code.exe\" --wait
[difftool "beyondcompare4"]
    path = \"C:\\Program Files\\Beyond Compare 4\\bcomp.exe\"
    cmd = \"C:\\Program Files\\Beyond Compare 4\\bcomp.exe\" \"$LOCAL\" \"$REMOTE\"
    keepBackup = false
[mergetool "BeyondCompare4"]
    path = \"C:\\Program Files\\Beyond Compare 4\\bcomp.exe\"
    cmd = \"C:\\Program Files\\Beyond Compare 4\\bcomp.exe\" \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\"