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

Re: [BUG] attribute "eol" with "crlf"

From
Ralf Thielow <ralf.thielow@googlemail.com>
Date
Dec 16, 2011, 22:05 UTC
Message-ID
<CAN0XMOL674Hw_LctTC+8NNqA84Of6dMjdKT0SU+DWMG7EYShYQ@mail.gmail.com>
In-Reply-To
<7vmxasgqlm.fsf@alter.siamese.dyndns.org>
So i have to commit ".gitattributes" and everything is fine for me after!?
Show 23 quoted lines
> The sequence adds "test\r\n" file without .gitattributes to have the
> repository record that exact byte sequence for the file. But then later
> goes around and says "This file wants to express the end of line with CRLF
> on the filesystem, so please replace LF in the repository representation
> to CRLF when checking out, and replace CRLF in the working tree to LF when
> checking in".
>
> So it is not surprising that "\r\n" coming from the repository is replaced
> to "\r\r\n" when checked out. As far as the repository data is concerned,
> that line has a funny byte with value "\r" at the end, immediately before
> the line terminator "\n".
>
> What you said is _technically_ correct in that sense.
>
> However, I think the CRLF filter used to have a hack to strip "\r" if the
> repository data records "\r" at the end of line. This was intended to help
> people who checked in such a broken text file (if it is a text file, then
> raw ascii CR does not have a place in it in the repository representation)
> and it was a useful hack to help people recover from such mistakes to
> start the project from DOS-only world (with CRLF in the repository data)
> and migrate to cross platform world (with LF in the repository data, CRLF
> in the DOS working tree).  I suspect that the streaming filter conversion
> may not have the same hack in it.
Previous: Junio C HamanoNext: Junio C Hamano
Message 9 of 15 in “[BUG] attribute "eol" with "crlf"”
  1. Ralf ThielowDec 16, 2011
  2. Junio C HamanoDec 16, 2011
  3. Ralf ThielowDec 16, 2011
  4. Matthieu MoyDec 16, 2011
  5. Ralf ThielowDec 16, 2011
  6. Adam BorowskiDec 16, 2011
  7. Ralf ThielowDec 16, 2011
  8. Junio C HamanoDec 16, 2011
  9. Ralf ThielowDec 16, 2011
  10. Junio C HamanoDec 16, 2011
  11. Ralf ThielowDec 16, 2011
  12. Junio C HamanoDec 16, 2011
  13. Junio C HamanoDec 16, 2011
  14. Ralf ThielowDec 17, 2011
  15. Junio C HamanoDec 17, 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.