14

根据这个问题,我知道 git 中的 core.autocrlf=true 会导致 CRLF 到 LF 翻译。

但是,当我输入: git config core.autocrlf

我看:假的

但是,当我暂存已在 repo 中的已修改文件时,我仍然会收到以下警告:

Warning: CRLF will be replaced by LF in File1.X.
The file will have its original line endings in your working directory.

我的猜测是该文件的 repo 副本已经设置为“autocrlf=true”。

问题: A. 如何查询文件或 git repo 是否已经强制 AutoCrlf?B. 如何将它 autocrlf 关闭?

4

1 回答 1

8

Git 允许您使用 .gitattributes 文件在每个存储库的基础上覆盖您的全局设置。您将它放在存储库的根目录中,并成为作为存储库的一部分提交的文件。我怀疑你的情况正在发生这种情况。

Github 有一个很好的页面:https ://help.github.com/articles/dealing-with-line-endings

简而言之,您可以使用 text 属性来设置特定文件扩展名的行尾。例如,将 sln 文件强制为 CRLF 将需要 .gitattributes 文件中的以下行:

# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf
于 2012-10-23T01:08:34.020 回答