.gitattributes与core.autocrlf unset

时间:2012-12-04 20:20:34

标签: git core.autocrlf gitattributes

我的存储库中有一个.gitattributes文件,看起来像这样

* text=auto
*.txt text

我在存储库,全局和系统设置中取消了core.autocrlf的设置。根据gitattributes的文档,我的理解是存储库中名称以.txt结尾的所有文件都应该使用本机行结尾进行检出。但我所看到的是,即使在Windows上,.txt文件也总是有LF用于行结尾。鉴于此配置,为什么Windows上的行结束CRLF不是?

2 个答案:

答案 0 :(得分:12)

问题是core.eol的处理存在错误。 gitattributes的文档说如果它未设置则将使用native,这应该默认为系统的正确行结尾(Windows的CRLF,unix的LF),但是在我的系统上取消设置core.eol或将其设置为native总是导致行结尾的LF。那么,答案是在Windows上明确地将core.eol设置为crlf。 http://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/的评论使我得到了这个答案。

答案 1 :(得分:-2)

您需要将core.autocrlf设置为输入。在Windows上将其设置为true。

如果您不共享x-platform,请将其设置为false并完全忘记这些属性。