git-rebase.sh: Add check if rebase is in progress "git rebase --continue" and friends gave nonsense errors when there is no rebase in progress. Signed-off-by: Stephan Beyer <s-beyer@gmx.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
diff --git a/git-rebase.sh b/git-rebase.sh index dd7dfe1..e2d85ee 100755 --- a/git-rebase.sh +++ b/git-rebase.sh
@@ -150,6 +150,9 @@ do case "$1" in --continue) + test -d "$dotest" -o -d .dotest || + die "No rebase in progress?" + git diff-files --quiet --ignore-submodules || { echo "You must edit all merge conflicts and then" echo "mark them as resolved using git add" @@ -178,6 +181,9 @@ exit ;; --skip) + test -d "$dotest" -o -d .dotest || + die "No rebase in progress?" + git reset --hard HEAD || exit $? if test -d "$dotest" then @@ -203,16 +209,16 @@ exit ;; --abort) + test -d "$dotest" -o -d .dotest || + die "No rebase in progress?" + git rerere clear if test -d "$dotest" then move_to_original_branch - elif test -d .dotest - then + else dotest=.dotest move_to_original_branch - else - die "No rebase in progress?" fi git reset --hard $(cat "$dotest/orig-head") rm -r "$dotest"