diff options
author | Robert Shearman <rob@codeweavers.com> | 2006-07-27 10:32:25 +0100 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-07-31 00:15:59 -0700 |
commit | 83c31614ceae2612b7cdba40e6401716fe854cd2 (patch) | |
tree | e45d87ca6b9132b4e81075542dc581172524a972 | |
parent | b63fafdfd844c2037fba53b9944431c1378b4135 (diff) | |
download | git-83c31614ceae2612b7cdba40e6401716fe854cd2.tar.gz git-83c31614ceae2612b7cdba40e6401716fe854cd2.tar.xz |
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 <rob@codeweavers.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-x | git-rebase.sh | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/git-rebase.sh b/git-rebase.sh index 29028dd5f..240032f32 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 |