我的存储库中有一个 PNG 图标,在将其推送到远程后损坏了。使用 git check-attr
我发现 git 将其视为文本文件,因此根据存储库的 .gitattributes
将其行尾转换为 LF。
有没有办法恢复原始文件?
最佳答案
遗憾的是,似乎无法检索“autocrlf
ed”文件的原始版本,只要历史记录中没有该文件的未修改版本(意味着没有 autocrlf
使用)。
使用 core.autocrlf
true
git 将所有出现的 windows 行结尾 (\r\n
) 替换为 unix 风格的行结尾(\n
)。之后就不可能确定哪些 \n
字节被编码为 \r\n
字节。
因此我不得不得出结论,恢复文件是不可能的。
这是避免 autocrlf
并自行处理行尾的原因。一般来说,我建议避免使用 autocrlf
;有关此主题的更多信息,请参见 here .
关于git - 撤消git的行结束转换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24266794/