Re: [PATCH v1 1/1] git diff --quiet exits with 1 on clean tree with CRLF conversions
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Mar 2, 2017, 18:33 UTC
- Message-ID
- <xmqqbmtjcyug.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <20170302142056.GB7821@mcrowe.com>
Mike Crowe <mac@mcrowe.com> writes:
Show 5 quoted lines
> All the solutions presented so far do cause a small change in behaviour > when using git diff --quiet: they may now cause warning messages like: > > warning: CRLF will be replaced by LF in crlf.txt. > The file will have its original line endings in your working directory.
That is actually a good thing, I think. As the test modifies a file that originally has "Hello\r\nWorld\r\n" in it to this:
>> +test_expect_success 'quiet diff works on file with line-ending change that has no effect on repository' ' >> + printf "Hello\r\nWorld\n" >crlf.txt &&
If you did "git add" at this point, you would get the same warning, because the lack of CR on the second line could well be a mistake you may want to notice and fix before going forward. Otherwise you'd be losing information that _might_ matter to you (i.e. the fact that the first line had CRLF while the second had LF) and it is the whole point of safe_crlf setting.
I also think it is a good thing if "git status" reported this path as modified for the same reason (I didn't actually check if that is the case).