From: Chris Packham Date: Wed, 14 Dec 2016 08:37:57 +0000 (+1300) Subject: merge: ensure '--abort' option takes no arguments X-Git-Tag: v2.12.0-rc0~105^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=042e290da6aee0a9f21cd5890ccf231c266e177e;p=thirdparty%2Fgit.git merge: ensure '--abort' option takes no arguments Like '--continue', the '--abort' option doesn't make any sense with other options or arguments to 'git merge' so ensure that none are present. Signed-off-by: Chris Packham Signed-off-by: Junio C Hamano --- diff --git a/builtin/merge.c b/builtin/merge.c index 836ec281b4..668aaffb84 100644 --- a/builtin/merge.c +++ b/builtin/merge.c @@ -1163,6 +1163,10 @@ int cmd_merge(int argc, const char **argv, const char *prefix) int nargc = 2; const char *nargv[] = {"reset", "--merge", NULL}; + if (orig_argc != 2) + usage_msg_opt("--abort expects no arguments", + builtin_merge_usage, builtin_merge_options); + if (!file_exists(git_path_merge_head())) die(_("There is no merge to abort (MERGE_HEAD missing).")); diff --git a/t/t7600-merge.sh b/t/t7600-merge.sh index 682139c4ea..2ebda509ac 100755 --- a/t/t7600-merge.sh +++ b/t/t7600-merge.sh @@ -154,6 +154,8 @@ test_expect_success 'test option parsing' ' test_must_fail git merge -s foobar c1 && test_must_fail git merge -s=foobar c1 && test_must_fail git merge -m && + test_must_fail git merge --abort foobar && + test_must_fail git merge --abort --quiet && test_must_fail git merge --continue foobar && test_must_fail git merge --continue --quiet && test_must_fail git merge