1

我们已经在我的项目中过渡到 git,现在我想超越它应该使用它的工作。我已阅读scootersoftware 页面上的说明。我已经尝试了这两种选择,刚才我在我的 .gitconfig 中使用了旧版本:

[diff]
    tool = bc3
[difftool "bc3"]
    path = "\"c:/program files/beyond compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\""

这不像我预期的那样工作。这打开了超越比较工具,但由于某种原因,我进入了合并模式,顶部有三个窗口,底部有一个。有任何想法吗?

4

2 回答 2

0

不确定您的情况是否与我的相同,但我遇到了类似的问题,但这是由 .gitconfig 中的合并设置引起的

我的设置包含以下行

[merge]
tool = BeyondCompare3

[diff]
guitool = BeyondCompare3

[difftool "BeyondCompare3"]
path = C:/Program Files (x86)/Beyond Compare 3/BComp.exe
cmd = \"C:/Program Files (x86)/Beyond Compare 3/BComp.exe\" \"$LOCAL\" \"$REMOTE\"

[mergetool "BeyondCompare3"]
path = C:/Program Files (x86)/Beyond Compare 3/bcomp.exe
cmd = \"C:/Program Files (x86)/Beyond Compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\" \"$BASE\" \"$MERGED\" 

似乎发生的是 git 使用后一个选项(带有四个参数)而不是前者。

解决方法是从

[mergetool "BeyondCompare3"]

[mergetool "MergeBeyondCompare3"]

这意味着它使用带有两个参数的 difftool 版本。

您会期望您还应该能够将第一部分更改为

[merge]
tool = MergeBeyondCompare3

但是如果你这样做了,那么该命令git difftool file1.txt file2.txt将使用 Merge 而不是 diff 将使用返回到我们所在的位置。

缺点是如果你真的想使用合并,你需要使用-t MergeBeyondCompare3命令行选项。

于 2013-07-04T13:58:52.963 回答
0

我相信我得到了您希望的窗口,这是我的设置。

[diff]
    tool = bc3x
    renames = copies
[difftool "bc3x"]
    cmd = \"c:/program files (x86)/beyond compare 3/bcomp.exe\" \"$LOCAL\" \"$REMOTE\"
[difftool]
    prompt = false

我多年来一直使用相同的设置,并没有给我带来任何问题。希望这可以帮助。

于 2013-06-20T23:47:09.507 回答