git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Caleb Cushing <xenoterracide@gmail.com>
To: git@vger.kernel.org
Subject: [PATCH] mergetool merge/skip/abort
Date: Wed, 21 Jan 2009 09:37:20 -0500	[thread overview]
Message-ID: <81bfc67a0901210637j52fa7a55q51b599e9ff16f6dc@mail.gmail.com> (raw)

There are some files that I can't merge with git, and sometimes you
just want to finish merging later or move on to the next file and come
back later. My patch allows you to quit mergetool without ctrl-c, or
move on to the next file or merge the this one. pretty simple and I
think will be useful for a lot of people.


>From b647762ad179cdaaf9f844671fdf26074563b366 Mon Sep 17 00:00:00 2001
From: Caleb Cushing <xenoterracide@gmail.com>
Date: Tue, 20 Jan 2009 11:33:30 -0500
Subject: [PATCH] mergetool merge/skip/abort
 add functionality to skip merging a file or abort from the merge

---
 git-mergetool.sh |   24 ++++++++++++++++++++----
 1 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/git-mergetool.sh b/git-mergetool.sh
index 00e1337..43d2a9e 100755
--- a/git-mergetool.sh
+++ b/git-mergetool.sh
@@ -177,11 +177,27 @@ merge_file () {
     describe_file "$local_mode" "local" "$LOCAL"
     describe_file "$remote_mode" "remote" "$REMOTE"
     if "$prompt" = true; then
-       printf "Hit return to start merge resolution tool (%s): " "$merge_tool"
-       read ans
-    fi
+               while true; do
+               printf "Use (m)erge file or (s)skip file, or (a)bort? (%s): " \
+               "$merge_tool"
+               read ans
+               case "$ans" in
+                       [mM]*)
+                       break
+                       ;;
+                       [sS]*)
+                       cleanup_temp_files
+                       return 0
+                       ;;
+                       [aA]*)
+                       cleanup_temp_files
+                       exit 0
+                       ;;
+               esac
+               done
+       fi

-    case "$merge_tool" in
+       case "$merge_tool" in
        kdiff3)
            if base_present ; then
                ("$merge_tool_path" --auto --L1 "$MERGED (Base)" --L2
"$MERGED (Local)" --L3 "$MERGED (Remote)" \
--
1.6.1






-- 
Caleb Cushing

http://xenoterracide.blogspot.com

             reply	other threads:[~2009-01-21 14:38 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-21 14:37 Caleb Cushing [this message]
2009-01-21 16:17 ` [PATCH] mergetool merge/skip/abort Caleb Cushing
2009-01-21 16:33   ` Johannes Schindelin
2009-01-21 18:49   ` Markus Heidelberg
2009-01-22  5:07     ` Caleb Cushing
2009-01-21 17:04 ` Charles Bailey
2009-01-22 14:17   ` Caleb Cushing
2009-01-22 14:22     ` Charles Bailey
2009-01-23 15:16       ` Caleb Cushing
2009-01-23 17:26         ` Junio C Hamano
2009-01-24 18:36           ` Caleb Cushing
2009-01-24 21:45             ` Nanako Shiraishi
2009-01-25  0:18               ` Caleb Cushing
2009-01-25  5:20               ` Junio C Hamano
2009-01-26 22:58           ` Theodore Tso
2009-01-27 22:09             ` Charles Bailey
2009-01-27 22:37               ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=81bfc67a0901210637j52fa7a55q51b599e9ff16f6dc@mail.gmail.com \
    --to=xenoterracide@gmail.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).