提交 abe62a40 编写于 作者: J Junio C Hamano

Merge branch 'jk/add-i-patch-do-prompt' into maint

The patch subcommand of "git add -i" was meant to have paths
selection prompt just like other subcommand, unlike "git add -p"
directly jumps to hunk selection.  Recently, this was broken and
"add -i" lost the paths selection dialog, but it now has been
fixed.

* jk/add-i-patch-do-prompt:
  add--interactive: fix missing file prompt for patch mode with "-i"
......@@ -92,7 +92,7 @@ sub colored {
}
# command line options
my $cmd;
my $patch_mode_only;
my $patch_mode;
my $patch_mode_revision;
......@@ -1299,7 +1299,7 @@ sub patch_update_cmd {
}
return 0;
}
if ($patch_mode) {
if ($patch_mode_only) {
@them = @mods;
}
else {
......@@ -1721,7 +1721,7 @@ sub process_args {
die sprintf(__("invalid argument %s, expecting --"),
$arg) unless $arg eq "--";
%patch_mode_flavour = %{$patch_modes{$patch_mode}};
$cmd = 1;
$patch_mode_only = 1;
}
elsif ($arg ne "--") {
die sprintf(__("invalid argument %s, expecting --"), $arg);
......@@ -1758,7 +1758,7 @@ sub main_loop {
process_args();
refresh();
if ($cmd) {
if ($patch_mode_only) {
patch_update_cmd();
}
else {
......
......@@ -394,4 +394,22 @@ test_expect_success 'diffs can be colorized' '
grep "$(printf "\\033")" output
'
test_expect_success 'patch-mode via -i prompts for files' '
git reset --hard &&
echo one >file &&
echo two >test &&
git add -i <<-\EOF &&
patch
test
y
quit
EOF
echo test >expect &&
git diff --cached --name-only >actual &&
test_cmp expect actual
'
test_done
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册