Question

I am working on Windows, but may also work on Unix, so I don't need to store Windows line endings. I just want to suppress the warning.

I found these Stack Overflow questions that are relevant:
git turn off "LF will be replaced by CRLF" warning
git, whitespace errors, squelching and autocrlf, the definitive answers

I tried:
git config core.whitespace cr-at-eol false
git config core.whitespace cr-at-eol true
git config core.whitespace cr-at-eol nowarn

But these don't seem to do anything. Does anyone know how to turn off the warnings?

Thanks.

Was it helpful?

Solution

I simply use autocrlf=true in the .git/config file to cover most situations in Windows. There are occasional warnings depending on new source files.

If you have special files that don't follow the scheme set up a .gitattributes separately for them e.g. I have Matlab files with *.m eol=lf.

OTHER TIPS

I used this way:

The git config core.autocrlf command is used to change how Git handles line endings. It takes a single argument.

On Windows, you simply pass true to the configuration. For example:

$ git config --global core.autocrlf true    
# Configure Git on Windows to properly handle line endings

You can also provide a special --global flag, which makes Git use the same settings for line endings across every local Git repository on your computer.

After you've set the core.autocrlf option and committed a .gitattributes file, you may find that Git wants to commit files that you have not modified. At this point, Git is eager to change the line endings of every file for you.

The best way to automatically configure your repository's line endings is to first backup your files with Git, delete every file in your repository (except the .git directory), and then restore the files all at once. Save your current files in Git, so that none of your work is lost.

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

Remove every file from Git's index.

$ git rm --cached -r .

Rewrite the Git index to pick up all the new line endings.

$ git reset --hard

Add all your changed files back, and prepare them for a commit. This is your chance to inspect which files, if any, were unchanged.

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

Commit the changes to your repository.

$ git commit -m "Normalize all the line endings"

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

I'm also developing on windows and Because our servers are powered by Linux and all the code has to base on Linux I have preferred to change all my files to LF instead of CRLF.

from git command line:

git config --global core.autocrlf false

i'm working with intellij idea so it's quite easy:

1) File --> settings --> editor --> code style: (for any new file will be created)

a. Scheme : default

b. Line separator: unix and os x (\n)

2) mark the root of the project --> file --> line separator --> LF unix and os x (\n) (for exist files)

Remark: you can also use apps like dos2unix.exe or some other scripts.

than I did using my command line: (you can do this also from the idea)

git commit -m "bla bla"
git add .
git push origin master

since then, I didn't got those warnings

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top