使用Git,如何关闭“LF将被CRLF替换”警告

时间:2011-06-28 02:16:41

标签: git line-endings git-config

使用Git,当使用autocrlf = true标志时,在更改行结尾时仍会发出警告。

我了解警告的内容,以及如何关闭行结束标志,但如何关闭警告本身?

6 个答案:

答案 0 :(得分:238)

您可以使用

关闭警告
git config --global core.safecrlf false

(这只会关闭警告,而不是功能本身。)

答案 1 :(得分:3)

您应该使用core.autocrlf inputcore.eol input。或者只是不要让git根据autocrlf false更改行结尾,并且使用core.whitespace cr-at-eol摆脱差异中的crlfs的突出显示等。

希望这有帮助

答案 2 :(得分:0)

您正在寻找core.whitespace选项(有关详情,请参阅git config --help)。

您可以像这样设置此选项:

$ git config core.whitespace cr-at-eol

答案 3 :(得分:0)

我用这种方式:

  

将当前文件保存在Git中,这样就不会丢失任何工作。

git add . -u
git commit -m "Saving files before refreshing line endings"
     

从Git的索引中删除所有文件。

git rm --cached -r .
     

重写Git索引以获取所有新行结尾。

git reset --hard
     

重新添加所有已更改的文件,并为提交做好准备。这个   你有机会检查哪些文件(如果有的话)没有改变。

git add .
# It is perfectly safe to see a lot of messages here that read
# "warning: CRLF will be replaced by LF in file."
     

将更改提交到您的存储库。

git commit -m "Normalize all the line endings"

https://help.github.com/articles/dealing-with-line-endings/

答案 4 :(得分:0)

有趣的是,我已经按照下面的说明应用了这两个配置,而我的.gitconfig文件包含以下两行:

out[arr[1]] || []

但是我得到了警告。 现在,仅尝试尝试我将这两行注释掉,然后警告实际上消失了。 不知道为什么我把它们放在首位...

答案 5 :(得分:0)

设置“ core.safecrlf false”有效。但是,将值更改为“ true”后,输出将从“警告”更改为“致命”,如下所示。

asn1 encoding routines