git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Applying .gitattributes text/eol changes

From
Marc Strapetz <marc.strapetz@syntevo.com>
Date
Jan 3, 2011, 17:18 UTC
Message-ID
<4D220500.2000104@syntevo.com>

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
makes tools like IDEs assume that the file content has been changed.
(Even if the timestamps would be properly reset, the replacement of the
files would have triggered system file change notifications and I'd
expect various tools to still reload these files)
- there will be warnings for files which are locked by other processes
(at least on Windows). I'm usually seeing this for JAR files which are
not affected by eol-attribute changes at all.

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.

Marc.
Next: Marc Strapetz
Message 1 of 11 in “Applying .gitattributes text/eol changes”
  1. Marc StrapetzJan 3, 2011
  2. Marc StrapetzJan 11, 2011
  3. Michael J GruberJan 11, 2011
  4. Marc StrapetzJan 11, 2011
  5. Michael J GruberJan 13, 2011
  6. Marc StrapetzJan 13, 2011
  7. Michael J GruberJan 13, 2011
  8. Marc StrapetzJan 13, 2011
  9. Junio C HamanoJan 13, 2011
  10. Michael J GruberJan 14, 2011
  11. Marc StrapetzJan 14, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.