{"thread":{"id":"4131","subject":"[PATCH] Make git rebase interactive help match documentation.","startedAt":"2006-05-14T03:34:08Z","lastAt":"2006-05-14T03:34:08Z","messageCount":1,"participants":["Sean"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"19903","messageId":"BAYC1-PASMTP118D932D1C71F5F5A62D1EAEA20@CEZ.ICE","threadId":"4131","inReplyTo":null,"subject":"[PATCH] Make git rebase interactive help match documentation.","fromName":"Sean","fromEmail":"seanlkml@sympatico.ca","sentAt":"2006-05-14T03:34:08Z","receivedAt":"2006-05-14T03:34:08Z","isPatch":true,"sender":{"key":"seanlkml@sympatico.ca","avatar":"https://gravatar.com/avatar/f92923f54fc08c401fc59b71829d4b89e9b8087fbba45ff87c82e6a83aee02ae?d=mp&s=160"},"body":"\nSigned-off-by: Sean Estabrooks <seanlkml@sympatico.ca>\n\n---\n\n Documentation/git-rebase.txt |   11 +++++------\n git-am.sh                    |   11 +++++++++--\n git-rebase.sh                |   21 ++++++++++++++++-----\n 3 files changed, 30 insertions(+), 13 deletions(-)\n\n0a4f0dac668dcba52e20d71c8503a50a92bc2b86\ndiff --git a/Documentation/git-rebase.txt b/Documentation/git-rebase.txt\nindex 1b482ab..08ee4aa 100644\n--- a/Documentation/git-rebase.txt\n+++ b/Documentation/git-rebase.txt\n@@ -9,9 +9,7 @@ SYNOPSIS\n --------\n 'git-rebase' [--onto <newbase>] <upstream> [<branch>]\n \n-'git-rebase' --continue\n-\n-'git-rebase' --abort\n+'git-rebase' --continue | --skip | --abort\n \n DESCRIPTION\n -----------\n@@ -23,9 +21,10 @@ not exist in the <upstream> branch.\n \n It is possible that a merge failure will prevent this process from being\n completely automatic.  You will have to resolve any such merge failure\n-and run `git rebase --continue`.  If you can not resolve the merge\n-failure, running `git rebase --abort` will restore the original <branch>\n-and remove the working files found in the .dotest directory.\n+and run `git rebase --continue`.  Another option is to bypass the commit\n+that caused the merge failure with `git rebase --skip`.  To restore the\n+original <branch> and remove the .dotest working files, use the command\n+`git rebase --abort` instead.\n \n Note that if <branch> is not specified on the command line, the currently\n checked out branch is used.\ndiff --git a/git-am.sh b/git-am.sh\nindex 507ae4d..33f208c 100755\n--- a/git-am.sh\n+++ b/git-am.sh\n@@ -15,6 +15,10 @@ stop_here () {\n }\n \n stop_here_user_resolve () {\n+    if [ -n \"$resolvemsg\" ]; then\n+\t    echo \"$resolvemsg\"\n+\t    stop_here $1\n+    fi\n     cmdline=$(basename $0)\n     if test '' != \"$interactive\"\n     then\n@@ -121,7 +125,7 @@ fall_back_3way () {\n }\n \n prec=4\n-dotest=.dotest sign= utf8= keep= skip= interactive= resolved= binary= ws=\n+dotest=.dotest sign= utf8= keep= skip= interactive= resolved= binary= ws= resolvemsg=\n \n while case \"$#\" in 0) break;; esac\n do\n@@ -157,6 +161,9 @@ do\n \t--whitespace=*)\n \tws=$1; shift ;;\n \n+\t--resolvemsg=*)\n+\tresolvemsg=$(echo \"$1\" | sed -e \"s/^--resolvemsg=//\"); shift ;;\n+\n \t--)\n \tshift; break ;;\n \t-*)\n@@ -185,7 +192,7 @@ then\n else\n \t# Make sure we are not given --skip nor --resolved\n \ttest \",$skip,$resolved,\" = ,,, ||\n-\t\tdie \"we are not resuming.\"\n+\t\tdie \"Resolve operation not in progress, we are not resuming.\"\n \n \t# Start afresh.\n \tmkdir -p \"$dotest\" || exit\ndiff --git a/git-rebase.sh b/git-rebase.sh\nindex 9e25902..6ff6088 100755\n--- a/git-rebase.sh\n+++ b/git-rebase.sh\n@@ -12,9 +12,10 @@ It then attempts to create a new commit \n \n It is possible that a merge failure will prevent this process from being\n completely automatic.  You will have to resolve any such merge failure\n-and run git-rebase --continue.  If you can not resolve the merge failure,\n-running git-rebase --abort will restore the original <branch> and remove\n-the working files found in the .dotest directory.\n+and run git rebase --continue.  Another option is to bypass the commit\n+that caused the merge failure with git rebase --skip.  To restore the\n+original <branch> and remove the .dotest working files, use the command\n+git rebase --abort instead.\n \n Note that if <branch> is not specified on the command line, the\n currently checked out branch is used.  You must be in the top\n@@ -28,6 +29,11 @@ Example:       git-rebase master~1 topic\n '\n . git-sh-setup\n \n+RESOLVEMSG=\"\n+When you have resolved this problem run \\\"git rebase --continue\\\".\n+If you would prefer to skip this patch, instead run \\\"git rebase --skip\\\".\n+To restore the original branch and stop rebasing run \\\"git rebase --abort\\\".\n+\"\n unset newbase\n while case \"$#\" in 0) break ;; esac\n do\n@@ -40,7 +46,11 @@ do\n \t\t\texit 1\n \t\t\t;;\n \t\tesac\n-\t\tgit am --resolved --3way\n+\t\tgit am --resolved --3way --resolvemsg=\"$RESOLVEMSG\"\n+\t\texit\n+\t\t;;\n+\t--skip)\n+\t\tgit am -3 --skip --resolvemsg=\"$RESOLVEMSG\"\n \t\texit\n \t\t;;\n \t--abort)\n@@ -143,4 +153,5 @@ then\n fi\n \n git-format-patch -k --stdout --full-index \"$upstream\" ORIG_HEAD |\n-git am --binary -3 -k\n+git am --binary -3 -k --resolvemsg=\"$RESOLVEMSG\"\n+\n-- \n1.3.2.gd9a4\n"}]}