From: Robert Shearman Date: Thu, 27 Jul 2006 09:32:25 +0000 (+0100) Subject: rebase: Fix the detection of fast-forwarding of the current branch to upstream. X-Git-Tag: v1.4.2-rc3~24^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=83c31614ceae2612b7cdba40e6401716fe854cd2;p=thirdparty%2Fgit.git rebase: Fix the detection of fast-forwarding of the current branch to upstream. Previously, a rebasing operation with on a branch that is just tracking an upstream branch would output a confusing "Nothing to do" due to no patches being given to git-am. The test brings the behaviour back into line with that of just before e646c9c8c0aa995eac284ea0a2117add19c4461c. Signed-off-by: Robert Shearman Signed-off-by: Junio C Hamano --- diff --git a/git-rebase.sh b/git-rebase.sh index 29028dd5fc..240032f32d 100755 --- a/git-rebase.sh +++ b/git-rebase.sh @@ -266,14 +266,11 @@ onto=$(git-rev-parse --verify "${onto_name}^0") || exit # Check if we are already based on $onto, but this should be # done only when upstream and onto are the same. -if test "$upstream" = "$onto" +mb=$(git-merge-base "$onto" "$branch") +if test "$upstream" = "$onto" && test "$mb" = "$onto" then - mb=$(git-merge-base "$onto" "$branch") - if test "$mb" = "$onto" - then - echo >&2 "Current branch $branch_name is up to date." - exit 0 - fi + echo >&2 "Current branch $branch_name is up to date." + exit 0 fi # Rewind the head to "$onto"; this saves our current head in ORIG_HEAD. @@ -281,7 +278,7 @@ git-reset --hard "$onto" # If the $onto is a proper descendant of the tip of the branch, then # we just fast forwarded. -if test "$mb" = "$onto" +if test "$mb" = "$branch" then echo >&2 "Fast-forwarded $branch to $newbase." exit 0