path: root/
diff options
authorRobert Shearman <>2006-07-27 09:32:25 (GMT)
committerJunio C Hamano <>2006-07-31 07:15:59 (GMT)
commit83c31614ceae2612b7cdba40e6401716fe854cd2 (patch)
treee45d87ca6b9132b4e81075542dc581172524a972 /
parentb63fafdfd844c2037fba53b9944431c1378b4135 (diff)
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 <>
Diffstat (limited to '')
1 files changed, 5 insertions, 8 deletions
diff --git a/ b/
index 29028dd..240032f 100755
--- a/
+++ b/
@@ -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"
- 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
# 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"
echo >&2 "Fast-forwarded $branch to $newbase."
exit 0