我的仓库中有一个 .gitattributes 文件,如下所示
* text=auto
*.txt text
我在存储库、全局和系统设置中取消了 core.autocrlf。根据 gitattributes 的文档,我的理解是,存储库中名称以 .txt 结尾的所有文件都应以本机行结尾签出。不过,我所看到的是,即使在 Windows 上,.txt文件也始终具有行尾的 LF。鉴于此配置,为什么在Windows上行尾不是CRLF?
问题是在处理core.eol时存在一个错误。gitattributes 的文档说,如果未设置,则将使用本机,它应该默认为您的系统提供正确的行尾(Windows 的 CRLF,Unix 的 LF),但是将 core.eol 保留为未设置或在我的系统上将其设置为本机总是会导致行尾的 LF。那么,答案是在Windows上明确地将core.eol设置为crlf。http://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/的评论让我得出了这个答案。
您需要将core.autocrlf设置为input。在窗口中将其设置为 true。
如果您不共享 x-platform,则将其设置为 false 并完全忘记属性。