Re: [msysGit] Re: The different EOL behavior between libgit2-based software and official Git
- From
Torsten Bögershausen <tboegi@web.de>
- Date
- Jun 20, 2014, 10:33 UTC
- Message-ID
- <53A40DEC.4050902@web.de>
- In-Reply-To
- <CAO_ghTLq-a3dJGXvmspaCYS19RhTJzT0teWO5XSfVSiRUN7rrQ@mail.gmail.com>
Show 8 quoted lines
> Wow! > > P.S. > libgit2 just has a PR that try to be identical with official git. > See https://github.com/libgit2/libgit2/pull/2432 > > Yue Lin Ho >
I am not sure how much problems Git/libgit2 have with files contains mixed LF-CRLF, as I have the same problem with the LF.txt
The handling, according to my understandig, is: When core.eol is CRLF (or native under Windows) and core.autocrlf is true, and a file is checked out: If a file has CRLF in one line in the repo, nothing is changed. If a file has LF in one line in the repo, LF is converted into CRLF in the workspace.
But here at my systems this doesn't seem to work as expected either for LF.txt:
tb@mac:~/EOL_Test/TestAutoCrlf> t=LF.txt && rm -f $t && git -c core.eol=CRLF checkout $t && od -c $t 0000000 L i n e 1 \r \n l i n e ( 2 ) 0000020 \r \n l i n e 3 . \r \n t h i s 0000040 i s l i n e 4 \r \n l i n 0000060 e N o . 5 \r \n L i n e N 0000100 u m b e r 6 \r \n \r \n ================== tb@Linux:~/EOL_Test/TestAutoCrlf$ t=LF.txt && rm -f $t && git -c core.eol=CRLF checkout $t && od -c $t 0000000 L i n e 1 \n l i n e ( 2 ) \n 0000020 l i n e 3 . \n t h i s i s 0000040 l i n e 4 \n l i n e N 0000060 o . 5 \n L i n e N u m b e r 0000100 6 \n \n