Re: git diff --exit-code misbehaving in 2.46.x
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 25, 2024, 16:58 UTC
- Message-ID
- <xmqqbk0bpt5e.fsf@gitster.g>
- In-Reply-To
- <e3da5c9b-c208-4937-a2b4-e1028f3e6841@web.de>
René Scharfe <l.s.r@web.de> writes:
Show 9 quoted lines
> Am 25.09.24 um 16:27 schrieb Jan Wendland: >> >> git diff --exit-code in 2.46.x is unexpectedly returning a zero exit >> code for files marked as binary in .gitattributes where 2.45.x would >> correctly produce a non-zero exit code. >> ... > Thanks for the report! This is a known bug. The "next" branch contains > a fix, 9a41735af6 (diff: report modified binary files as changes in > builtin_diff(), 2024-09-21).
I just noticed something curious.
9a41735a (diff: report modified binary files as changes in builtin_diff(), 2024-09-21) explains that since 1aaf69e6 (diff: shortcut for diff'ing two binary SHA-1 objects, 2014-08-16) added binary comparison, the code path always used a quick hash-only comparison. But the above report claims it is a behaviour change between 2.45 and 2.46.
It does seem to say things are different with 2.45 when binary changes were checked with --quiet/--exit-code from my manual testing, though.
Thanks.