git difftool:如何比较zip文件

时间:2016-08-10 01:06:57

标签: git git-diff beyondcompare3

我正在尝试使用“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文件。我注意到除非Beyond Compare关闭,否则git difftool不应返回,因为如果它返回由它创建的临时文件被删除。但是如果是zip文件,它会立即返回。

顺便说一句,所有其他文件类型的diff对我来说都很好。我在Windows 7(64位)上,你可以看到配置了Beyond Compare 3。

2 个答案:

答案 0 :(得分:1)

Beyond Compare 4中已修复此问题。超越比较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网站上填写upgrade form

答案 1 :(得分:0)

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