我在工作中使用git-svn,人们不停地抱怨我在使用LF而不是CRLF。(我们大多是一家Windows )。
据我所知,当core.autocrlf是true时,工作副本是CRLF,当false是LF时,当input保持不变时。我喜欢autocrlf = true作为一个概念,但我希望它在索引中默认为CRLF,因为这就是get对SVN的承诺。
是否有一种方法来设置索引的结尾行?
我见过core.eol,但这似乎也只设置了工作副本使用的内容,而不是索引。
发布于 2013-02-04 18:19:06
您需要将名为.gitattributes的文件添加到项目的根目录中。这将迫使每个人提交相同的行结束。在这种情况下,由于您想强制使用crlf,您将在.gitattributes中添加这一行
* text eol=crlf然后,您也可以将回购中的每个文件标准化一次,以后再也不用担心了:Trying to fix line-endings with git filter-branch, but having no luck。
您还可以参考github在线结尾指南:https://help.github.com/articles/dealing-with-line-endings
发布于 2013-02-04 21:14:48
结果是,git-svn使用SVN中的svn:eol-style属性来决定如何存储行尾。如果您进入纯SVN签出&将svn:eol-style集添加到native,则Git将对native使用CRLF,对于Linux/OSX使用LF。
我也有以下设置:
$ git config core.autocrlf false
$ git config core.safecrlf true我的.gitattributes文件中没有任何东西。
https://stackoverflow.com/questions/14692773
复制相似问题