我的存储库中有一个png图标,在将其推到远程后损坏。使用git check-attr我发现git将其视为文本文件,因此根据存储库的.gitattributes将其行尾转换为lf。
有办法恢复原始文件吗?

最佳答案

遗憾的是,似乎不可能检索到“autocrlfed”文件的原始版本,只要历史中没有未接触过的文件版本(意味着没有使用过autocrlf)。
git用unix风格的行结尾(core.autocrlf)替换所有出现的windows行结尾(true)。在此之后,无法确定哪些\r\n字节曾经被编码为\n字节。
因此,我不得不得出结论,恢复文件是不可能的。
这是避免\n和自己处理行结尾的原因。一般来说,我建议避免使用\r\n;有关此主题的更多信息可以在here中找到。

08-26 21:16