Diff UTF-16 编码的文本和二进制 plist 文件

你可以通过指定 git 应该如何区分这些文件来区分 UTF-16 编码文件(本地化字符串文件 os iOS 和 macOS 是示例)。

将以下内容添加到~/.gitconfig 文件中。

[diff "utf16"]
textconv = "iconv -f utf-16 -t utf-8"

iconv 是一个转换不同编码的程序。

然后在要使用它的存储库的根目录中编辑或创建 .gitattributes 文件。或者只是编辑~/.gitattributes

*.strings diff=utf16

这将在 git diffs 之前转换以 .strings 结尾的所有文件。

你可以为其他文件执行类似的操作,可以将其转换为文本。

对于二进制 plist 文件,你可以编辑 .gitconfig

[diff "plist"]
textconv = plutil -convert xml1 -o -

.gitattributes

*.plist diff=plist