From: Yann Droneaud Date: Mon, 24 Jun 2013 17:02:11 GMT Subject: Re: Another core.safecrlf behavor with git diff/git status Message-ID: <400f1e3599efcbdcad82c2da89a3875c@meuh.org> In-Reply-To: <866f886ef5e48ba22eec0f67203666bb@meuh.org> Le 24.06.2013 18:37, Yann Droneaud a écrit : > I'm still trying to use .gitattributes "text" flag with CRLF line > ending files > under Linux. > > I'm surprised about the interaction between the index and the working > directory, > more specificaly about the interaction between git diff and git status: [...] > - Why git diff does not always report the CRLF/LF mismatch ? > > - Why git status does not report about the CRLF/LF mismatch before > updating the index: > it silently hide the CRLF/LF warning. > git add, git commit report the warning. git status should probably > do the same. > One last try for today, still under Linux, with git 1.8.1.4: $ git init Initialized empty Git repository in /home/ydroneaud/src/tmp/onemore/work1/.git/ $ git commit --allow-empty -m "root" [master (root-commit) 89c2ff9] root $ CRLF="\r\n" $ printf "Hello World 1${CRLF}Hello World 2${CRLF}Hello World 3${CRLF}Hello World 4" > test $ git add test $ git commit -m "test" [master 36d4628] test 1 file changed, 4 insertions(+) create mode 100644 test $ echo "test text" > .gitattributes $ git add .gitattributes $ git commit -m ".gitattributes" [master 3b9f3cc] .gitattributes 1 file changed, 1 insertion(+) create mode 100644 .gitattributes $ git diff # print nothing $ git status # On branch master nothing to commit, working directory clean $ touch test $ git diff warning: CRLF will be replaced by LF in test. The file will have its original line endings in your working directory. diff --git a/test b/test index b043836..63ba10f 100644 --- a/test +++ b/test @@ -1,4 +1,4 @@ -Hello World 1 -Hello World 2 -Hello World 3 +Hello World 1 +Hello World 2 +Hello World 3 Hello World 4 \ No newline at end of file - commiting .gitattributes should have trigger a warning about CRLF conversion - doing git diff after commiting .gitattributes should have reported the warning about CRLF/LF. I dislike complaining all the time about such unusual corner cases, I apologize not having patches to provides to Git to try to "fix"/improve this. Regards. -- Yann Droneaud OPTEYA