1

我正在尝试使用“git difftool”比较二进制文件。该文件也是暂存的,但似乎这并不重要。所以我正在使用类似下面的东西:

git difftool --staged /path/to/file

我的 .gitconfig 配置如下:

[difftool "bc3"]
    path = C:/Program Files (x86)/Beyond Compare 3/BComp.com
    cmd = BComp.com \"$LOCAL\" \"$REMOTE\" -lefttitle="Remote" -righttitle="$BASE" -lro
[diff]
    tool = bc3
[difftool]
    prompt = false

因此,当我运行git difftool它时,它会按预期打开 Beyond Compare,但是,我收到一个错误,即基本二进制文件不存在。修改后的本地副本已正确加载到工具中。

我注意到 *.bcpkg(Beyond Compare 设置文件,基本上是一个 zip 文件)以及常规的 *.zip 文件。但似乎对 *.exe 文件工作正常。我注意到的是,git difftool除非 Beyond Compare 关闭,否则不应返回,因为如果它返回由它创建的临时文件,则会被删除。但如果是 zip 文件,它总是会立即返回。

顺便说一下,所有其他文件类型的 diff 对我来说都很好。我在 Windows 7(64 位)上,如您所见,已配置 Beyond Compare 3。

4

2 回答 2

1

这是在 Beyond Compare 4 中修复的。Beyond Compare 4 支持从 git 区分 zip 文件。

Beyond Compare 3 不支持从 git 区分 zip 文件。它将失败并显示错误消息:文件夹不可用:C:\Users\username\AppData\Local\Temp\42Ycl9_filename.zip

如果您想评估 Beyond Compare 4 以测试 zip 文件差异,请运行安装程序并选择创建便携式安装并安装到桌面上的文件夹。这不需要管理员权限。然后运行​​git config --global difftool.bc3.path "c:/users/username/desktop/Beyond Compare 4/bcomp.exe"使 git 使用便携式安装。完成测试后,只需删除桌面上的文件夹即可删除版本 4 便携式安装。

要在评估第 4 版试用版后升级您的许可证,请填写Scooter Software 网站上的升级表。

于 2016-08-11T22:20:37.433 回答
0

FWIW,本文展示了如何配置 git 以在运行标准差异之前解压缩具有所选扩展名的文件。也许它有帮助。

于 2017-01-12T19:46:49.800 回答