470faf9 diff: move no-index detection to builtin/diff.c breaks the error message for "git diff --no-index", when the command is executed outside of a git repository and the wrong number of arguments are given. 6df5762 diff: don't read index when --no-index is given fixes the problem. Add a test to guard against similar breakages in the future. Signed-off-by: Thomas Gummerer <t.gummerer@xxxxxxxxx> --- >> Thanks, I've missed that one. It only happens when run outside a git >> repository, but the same comments still apply. Will fix and send a >> re-roll. > > Please don't, as the last round has already been pushed on 'next'. Sorry about that, should have checked first. > An incremental change on top would also illustrate more clearly what > breakage needed to be fixed, which would be another good thing. It > could even come with a new test that makes sure that the above > command line is diagnosed correctly as a mistake ;-). The breakage is actually fixed with the second patch as described in the commit message above, so here is just a test against future breakages. This test only works when the test root is outside of a git repository, as otherwise nongit will not be set. Is there another way to write it? t/t4053-diff-no-index.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/t/t4053-diff-no-index.sh b/t/t4053-diff-no-index.sh index 077c775..eb4f380 100755 --- a/t/t4053-diff-no-index.sh +++ b/t/t4053-diff-no-index.sh @@ -44,4 +44,11 @@ test_expect_success 'git diff outside repo with broken index' ' ) ' +test_expect_success 'git diff --no-index executed outside repo gives correct error message' ' + rm -rf .git && + test_must_fail git diff --no-index a b b 2>actual.err && + echo "usage: git diff --no-index <path> <path>" >expect.err && + test_cmp expect.err actual.err +' + test_done -- 1.8.5.4.g8639e57 -- 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