Subject: Re: wrong handling of text git attribute leading to files incorrectly reported as modified

From: Holger Hellmuth <[email-masked]>
Date: Wed, 16 Apr 2014 19:03:29 +0200

Am 11.04.2014 22:20, schrieb Frank Ammeter:
> #!/bin/bash
> # creating a git repo "repo"
> rm -rf repo
> mkdir repo
> cd repo
> git init
> # committing gitattributes with text attribute set for all files
> echo "* text" > .gitattributes
> git add .gitattributes
> git commit -m "added .gitattributes"
> # add a file with CRLF line ending with text attribute unset
> echo -e "crlf\r" > crlffile
> echo "* -text" > .gitattributes
> git add crlffile
> git commit -m "added crlffile"
> git checkout .gitattributes
> # now "crlffile" shows as modified, even though it isn't.

It is. In the repository is stored a crlffile with \r in it which would 
be changed when you would do a commit (with your current gitattributes)

> # only way to resolve is to modify .gitattributes

No. This works too:

git add crlffile
git commit -m .    # practically removes the \r inside the repository
git status crlffile
#shows up clean