14

As per this question, I understand that core.autocrlf=true in git will cause CRLF to LF translations.

However when I type : git config core.autocrlf

I see: false

However, when I stage modified files that are already in the repo, I still get these warnings:

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

My guess is that the repo copy of the file is already set to "autocrlf=true".

Questions: A. How do I query whether a file or git repo is already forcing AutoCrlf? B. How do I turn it autocrlf off?

4

1 に答える 1

8

Git allows you to override your global setting on a per-repository basis with a .gitattributes file. You put it in the root directory of the repository, and becomes a file committed as part of the repository. I suspect this is happening in your case.

Github has a good page on this: https://help.github.com/articles/dealing-with-line-endings

In short, you can use the text attribute to set the line endings for a particular file extension. For instance, forcing sln files to CRLF would require the following line in a .gitattributes file :

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