summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Junio C Hamano <gitster@pobox.com>2019-12-25 11:21:57 -0800
committerLibravatar Junio C Hamano <gitster@pobox.com>2019-12-25 11:21:57 -0800
commitff0cb70d456f586c94f15daa67d2ff1bb8e75fb6 (patch)
tree0b59125cda2d1a4beba3a1410599223ba856f371
parentt3434: mark successful test as such (diff)
parentcommit: forbid --pathspec-from-file --all (diff)
downloadtgif-ff0cb70d456f586c94f15daa67d2ff1bb8e75fb6.tar.xz
Merge branch 'am/pathspec-from-file'
An earlier series to teach "--pathspec-from-file" to "git commit" forgot to make the option incompatible with "--all", which has been corrected. * am/pathspec-from-file: commit: forbid --pathspec-from-file --all
-rw-r--r--builtin/commit.c3
-rwxr-xr-xt/t7526-commit-pathspec-file.sh6
2 files changed, 9 insertions, 0 deletions
diff --git a/builtin/commit.c b/builtin/commit.c
index e48c1fd90a..aa1332308a 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -347,6 +347,9 @@ static const char *prepare_index(int argc, const char **argv, const char *prefix
if (interactive)
die(_("--pathspec-from-file is incompatible with --interactive/--patch"));
+ if (all)
+ die(_("--pathspec-from-file with -a does not make sense"));
+
if (pathspec.nr)
die(_("--pathspec-from-file is incompatible with pathspec arguments"));
diff --git a/t/t7526-commit-pathspec-file.sh b/t/t7526-commit-pathspec-file.sh
index a06b683534..4b58901ed6 100755
--- a/t/t7526-commit-pathspec-file.sh
+++ b/t/t7526-commit-pathspec-file.sh
@@ -127,4 +127,10 @@ test_expect_success 'only touches what was listed' '
verify_expect
'
+test_expect_success '--pathspec-from-file and --all cannot be used together' '
+ restore_checkpoint &&
+ test_must_fail git commit --pathspec-from-file=- --all -m "Commit" 2>err &&
+ test_i18ngrep "[-]-pathspec-from-file with -a does not make sense" err
+'
+
test_done