[PATCH] add-interactive: shortcut to add hunk and quit
this combines the two "add -i" commands "y"+"q" to one.
Signed-off-by: Hermann Gausterer <git-git-2011@mrq1.org>
---
Documentation/git-add.txt | 1 +
git-add--interactive.perl | 6 +++++-
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/Documentation/git-add.txt b/Documentation/git-add.txt
index 9c1d395..329b720 100644
--- a/Documentation/git-add.txt
+++ b/Documentation/git-add.txt
@@ -280,6 +280,7 @@ patch::
y - stage this hunk
n - do not stage this hunk
q - quit; do not stage this hunk nor any of the remaining ones
+ Q - stage this hunk but none of the remaining ones
a - stage this hunk and all later hunks in the file
d - do not stage this hunk nor any of the later hunks in the file
g - select a hunk to go to
diff --git a/git-add--interactive.perl b/git-add--interactive.perl
index 4f08fe7..157a8a7 100755
--- a/git-add--interactive.perl
+++ b/git-add--interactive.perl
@@ -1123,6 +1123,7 @@ sub help_patch_cmd {
y - $verb this hunk$target
n - do not $verb this hunk$target
q - quit; do not $verb this hunk nor any of the remaining ones
+Q - $verb this hunk but none of the remaining ones
a - $verb this hunk and all later hunks in the file
d - do not $verb this hunk nor any of the later hunks in the file
g - select a hunk to go to
@@ -1313,7 +1314,7 @@ sub patch_update_file {
$hunk[$ix]{TYPE} eq 'deletion' ? ' deletion' :
' this hunk'),
$patch_mode_flavour{TARGET},
- " [y,n,q,a,d,/$other,?]? ";
+ " [y,n,q,Q,a,d,/$other,?]? ";
my $line = prompt_single_character;
if ($line) {
if ($line =~ /^y/i) {
@@ -1366,6 +1367,9 @@ sub patch_update_file {
next;
}
elsif ($line =~ /^q/i) {
+ if ($line =~ /^Q/) {
+ $hunk[$ix]{USE} = 1;
+ }
for ($i = 0; $i < $num; $i++) {
if (!defined $hunk[$i]{USE}) {
$hunk[$i]{USE} = 0;
--
1.7.0.4