Git可能搞乱文件编码吗?例如,一个带有一些非标准英文字符的文本文件,如ç,ã,é(或甚至ひらがな)可能会在拉或推?时被损坏?
答案 0 :(得分:1)
Windows上的Git可以设置为在拉取和推送时自动更改行结尾。换句话说,它将始终提交并推送Unix行结尾,但它创建的文件将具有Windows行结尾。这可能会导致Git错误地检测为文本文件的二进制文件出现问题。它理论上也可能导致实际文本文件出现问题,但这种情况非常不可能,因为绝大多数文本编码都以ASCII开头然后添加内容,这意味着CR和LF行结尾的字节在几乎所有的文字编码。 (众所周知的例外,我想Git所说的是UFT-16和UTF-32。还有一些鲜为人知的例外,例如BinarySignWriting,它根本不包含ASCII字符。)