Browse Source

Merge branch 'ow/no-dryrun-in-add-i'

"git add -i --dry-run" does not dry-run, which was surprising.  The
combination of options has taught to error out.

* ow/no-dryrun-in-add-i:
  add: die if both --dry-run and --interactive are given
maint
Junio C Hamano 4 years ago
parent
commit
47fa106617
  1. 2
      builtin/add.c
  2. 4
      t/t3700-add.sh

2
builtin/add.c

@ -484,6 +484,8 @@ int cmd_add(int argc, const char **argv, const char *prefix) @@ -484,6 +484,8 @@ int cmd_add(int argc, const char **argv, const char *prefix)
if (patch_interactive)
add_interactive = 1;
if (add_interactive) {
if (show_only)
die(_("--dry-run is incompatible with --interactive/--patch"));
if (pathspec_from_file)
die(_("--pathspec-from-file is incompatible with --interactive/--patch"));
exit(interactive_add(argv + 1, prefix, patch_interactive));

4
t/t3700-add.sh

@ -349,6 +349,10 @@ test_expect_success 'git add --dry-run --ignore-missing of non-existing file out @@ -349,6 +349,10 @@ test_expect_success 'git add --dry-run --ignore-missing of non-existing file out
test_cmp expect.err actual.err
'

test_expect_success 'git add --dry-run --interactive should fail' '
test_must_fail git add --dry-run --interactive
'

test_expect_success 'git add empty string should fail' '
test_must_fail git add ""
'

Loading…
Cancel
Save