From: Kaartic Sivaraam <kaartic.sivar...@gmail.com>
Date: Mon, 27 Nov 2017 22:51:04 +0530

Attempting to rebase when the HEAD is detached and is already
up to date with upstream (so there's nothing to do), the
following message is shown

        Current branch HEAD is up to date.

which is clearly wrong as HEAD is not a branch.

Handle the special case of HEAD correctly to give a more precise
error message.

Signed-off-by: Kaartic Sivaraam <kaartic.sivar...@gmail.com>
Signed-off-by: Junio C Hamano <gits...@pobox.com>
---
 git-rebase.sh | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/git-rebase.sh b/git-rebase.sh
index e5adb596a0..f3dd864437 100755
--- a/git-rebase.sh
+++ b/git-rebase.sh
@@ -601,11 +601,23 @@ then
                test -z "$switch_to" ||
                GIT_REFLOG_ACTION="$GIT_REFLOG_ACTION: checkout $switch_to" \
                        git checkout -q "$switch_to" --
-               say "$(eval_gettext "Current branch \$branch_name is up to 
date.")"
+               if test "$branch_name" = "HEAD" &&
+                        !(git symbolic-ref -q HEAD)
+               then
+                       say "$(eval_gettext "HEAD is up to date.")"
+               else
+                       say "$(eval_gettext "Current branch \$branch_name is up 
to date.")"
+               fi
                finish_rebase
                exit 0
        else
-               say "$(eval_gettext "Current branch \$branch_name is up to 
date, rebase forced.")"
+               if test "$branch_name" = "HEAD" &&
+                        !(git symbolic-ref -q HEAD)
+               then
+                       say "$(eval_gettext "HEAD is up to date, rebase 
forced.")"
+               else
+                       say "$(eval_gettext "Current branch \$branch_name is up 
to date, rebase forced.")"
+               fi
        fi
 fi
 
-- 
2.15.1-554-g7ec1e7e2b9

Reply via email to