使用TortoiseGit配合BeyondCompare实现在Git仓库中比对二进制文件
使用TortoiseGit的比对工具可以直接右键,点击选择比对和上一版本的变化差异:
但是TortoiseGit只能支持比对纯文本文件的变化差异,如果尝试比对二进制文件,会提示这不是一个有效的文本文件:
BeyondCompare可以比对二进制文件(或文本文件),但是需要两个文件都在硬盘中,无法像TortoiseGit一样直接右键对文件的历史版本进行比对。
很显然,TortoiseGit支持了这种扩展设置,只要在设置中就可以配置,对指定格式的文件使用指定程序进行打开比对:
但是配置之后,只能以文本模式打开BeyondCompare的比对窗口。
虽然可以打开标签页之后再设置,但这不是麻烦吗。
很显然,BeyondCompare也考虑了这种场景,使用帮助可以找到命令行参考:
按照文档的描述,我应该在命令行中增加一句 /fv="Hex Compare"
的开关参数,就可以使用十六进制比较的模式视图打开比对文件了。
但是不出意外地出意外了,打开的比对页面还是文本模式。
我进行了若干尝试,比如把斜杠换成横线、把等号换成空格、把引号去掉、加上尖括号,以及它们的组合,总之都没有效果。
最后发现,需要将参数写为 /fv="十六进制比较"
,也就是中文的十六进制比较,就可以了:
最后,TortoiseGit配置的二进制文件的比对命令如下,你可以根据自己的BeyondCompare安装位置自行修改:
"C:\Program Files (x86)\Beyond Compare 3\BCompare.exe" /fv="十六进制比较" %base %mine
你想到了汉化组在汉化的时候将命令行参数也给汉化了吗?反正我是没想到。