giteol

git commit get fatal error "fatal: CRLF would be replaced by LF in"


I'm using Ubuntu 13.10 x64, and I am working on a project that some developers are using Windows , I recently changed the git config core.eol to "lf" and core.autocrlf to "input" and core.safecrlf to "true". Since then, when I try to commit file into my local repository, I get this error:
fatal: CRLF would be replaced by LF in ......
From what I understand, if I set core.eol to "lf" and core.autocrlf to "input", git will automatically convert CRLF to LF, but why this error come out? How can I fix this problem?

Thank you.


Solution

  • This is a classic issue:

    http://toub.es/sites/toub.es/files/styles/standard_article/public/field/image/firstcommit.png
    (picture from Luis Tubes's blog post)

    The usual fix is to convert those files yourself, with dos2unix or Swiss File Knife.

    I have always preferred to keep core.autocrlf to false, which means:

    git config --global core.autocrlf false