我正在尝试使用“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(超越比较设置文件,基本上是一个 zip 文件)以及常规 *.zip 文件。但对于 *.exe 文件似乎工作得很好。我注意到的是git difftool
除非 Beyond Compare 关闭,否则不应返回,因为如果它返回,它创建的临时文件将被删除。但如果是 zip 文件,它总是立即返回。
顺便说一下,所有其他文件类型的 diff 对我来说效果很好。我使用的是 Windows 7(64 位),如您所见,我已配置 Beyond Compare 3。
最佳答案
此问题已在 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 试用版后升级您的许可证,请填写 upgrade form在 Scooter Software 网站上。
关于git difftool : how to compare zip files,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38862713/