将二进制文件视为十六进制字符串

时间:2017-03-01 19:08:23

标签: git hex

有没有办法以某种方式配置git,它会将二进制文件视为包含十六进制字符串的文本文件?我希望能够在任何十六进制查看器中以类似的方式比较提交之间的文件(例如Notepad ++ with Hex Editor插件)。

1 个答案:

答案 0 :(得分:0)

您可以为二进制文件使用自定义textconv属性。 gitattributes manual建议使用PNG图像的示例过滤器,以便让它们有意义地进行差异化处理。为了区分任意*.bin个文件,我建议使用类似于以下内容的gitattributes条目:

[diff "bin"]
    textconv = xxd
    cachetextconv = true

这会将文件提供给xxd,这是Vim附带的十六进制转换器。如果您不希望合作者安装Vim,您可能需要选择不同的(但类似的)工具。

请注意,此策略允许您编辑或合并生成的文本,并由Git重新解释。你需要一个自定义合并工具。