diff: allow --no-patch as synonym for -s

This follows the usual convention of having a --no-foo option to negate
--foo.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Matthieu Moy 2013-07-16 10:05:36 +02:00 committed by Junio C Hamano
parent 8ade9b140f
commit d09cd15d19
3 changed files with 14 additions and 1 deletions

View File

@ -839,5 +839,6 @@ options may be given. See linkgit:git-diff-files[1] for more options.
Show the tree objects in the diff output. This implies '-r'.
-s::
--no-patch::
Suppress diff output.
endif::git-rev-list[]

2
diff.c
View File

@ -3540,7 +3540,7 @@ int diff_opt_parse(struct diff_options *options, const char **av, int ac)
options->output_format |= DIFF_FORMAT_NAME;
else if (!strcmp(arg, "--name-status"))
options->output_format |= DIFF_FORMAT_NAME_STATUS;
else if (!strcmp(arg, "-s"))
else if (!strcmp(arg, "-s") || !strcmp(arg, "--no-patch"))
options->output_format |= DIFF_FORMAT_NO_OUTPUT;
else if (!prefixcmp(arg, "--stat"))
/* --stat, --stat-width, --stat-name-width, or --stat-count */

View File

@ -59,4 +59,16 @@ test_expect_success 'validate git diff-files -p output.' '
compare_diff_patch expected actual
'
test_expect_success 'git diff-files -s after editing work tree' '
git diff-files -s >actual 2>err &&
test_must_be_empty actual &&
test_must_be_empty err
'
test_expect_success 'git diff-files --no-patch as synonym for -s' '
git diff-files --no-patch >actual 2>err &&
test_must_be_empty actual &&
test_must_be_empty err
'
test_done