On Sun, 30 Aug 2009, Junio C Hamano wrote: > Jim Meyering <jim@xxxxxxxxxxxx> writes: > >> Junio C Hamano wrote: >> ... >>> Subject: [PATCH] diff --quiet: special case "ignore whitespace" options >>> ... >>> Change the semantics of --ignore-whitespace* options to mean more than >>> "omit showing the difference in text". When these options are used, the >>> internal "quick" optimization is turned off, and the status reported with >>> the --exit-code option will now match if any the textual diff output is >>> actually produced. >>> >>> Also rename the internal option "QUIET" to "QUICK" to better reflect what >>> its true purpose is. >> >> Thanks again. >> If there's anything I can to do help (add a test?), let me know. > > The change has been cooking in 'next' and hopefully be in 1.7.0. I think > the updated series adds its own test script, too. > > Using it in every day scenario, and reporting any breakage you notice > before 1.7.0 happens, would be greatly appreciated. > > Thanks. Perhaps I'm expected something different than what I _should_ be expecting, but shouldn't --quiet always return the same as --exit-code? # Cut/Paste example mkdir test_ws_quiet && cd test_ws_quiet && git init printf "foo bar \n\n" >f1.txt git add . git commit -m 'f text' printf "foo bar\n\n" >f1.txt git commit -a -m 'f with diff white-space in middle & end' git diff -w --exit-code HEAD^ >/dev/null echo $? # returns '0' which it should git diff -w --quiet HEAD^ echo $? # returns '0' which it should git diff -b --exit-code HEAD^ >/dev/null echo $? # returns '0' which it should git diff -b --quiet HEAD^ >/dev/null echo $? # returns '0' which it should git diff --ignore-space-at-eol --exit-code HEAD^ >/dev/null echo $? # returns '1' which it should git diff --ignore-space-at-eol --quiet HEAD^ echo $? #returns '0' <=== Unexpected. # # Next phase # printf "foobar\n\n">f1.txt git commit -a -m 'f without any spaces' git diff -w --exit-code HEAD^ >/dev/null echo $? # returns '0' which it should git diff -w --quiet HEAD^ echo $? # returns '0' which it should git diff -b --exit-code HEAD^ >/dev/null echo $? # returns '1' which it should git diff -b --quiet HEAD^ >/dev/null echo $? # returns '0' <=== Unexpected git diff --ignore-space-at-eol --exit-code HEAD^ >/dev/null echo $? # returns '1' which it should git diff --ignore-space-at-eol --quiet HEAD^ echo $? #returns '0' <=== Unexpected. -- Thell -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html