Re: Applying .gitattributes text/eol changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Marc Strapetz venit, vidit, dixit 11.01.2011 15:02:
> On 11.01.2011 13:11, Michael J Gruber wrote:
>> Marc Strapetz venit, vidit, dixit 03.01.2011 18:18:
>>> I'm looking for an unobtrusive way to apply (committed) changes for
>>> text/eol attributes to the working tree. For instance, after having
>>> changed "*.txt eol=crlf" to "*.txt eol=lf", all *.txt files should be
>>> converted from CRLF to LF endings. The only advice I found so far is to
>>> remove .git/index and do a reset --hard. The disadvantage of this
>>> approach is that every file will be touched:
>>>
>>> - although the content does not change, timestamps will be changed. This
>>
>> The bytewise content does change.
> 
> The content has only changed for *.txt files, but the timestamps of
> *all* files are updated. I guess (but didn't verify from code), that in

Well, sure...

> case of missing .git/index, Git freshly writes all working tree files,
> ignoring already existing files which already have the correct content.
> Maybe this behavior is by intention and makes sense in some cases. In my
> case it has adverse effects on IDEs and probably other tools which are
> monitoring the file system.

...but changing gitattributes is something you don't do routinely in
your workflow; so, at worst there would be an occasional unnecessary run
of your build process.

> 
>>> One solution I could think of which might be helpful in other situations
>>> as well would be to have an "--unobtrusive" option for reset which would
>>> only replace a file if the content has actually been changed.
>>
>> How about
>>
>> git ls-files \*.txt | xargs touch -a
>> git ls-files \*.txt | git checkout
> 
> That won't be helpful as it requires me to know what has changed.

But you do know that only (at most) *.txt have changed!

Michael
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]