From: Phil Hord Date: Tue, 23 Oct 2012 20:39:56 +0000 (-0400) Subject: git-pull: Avoid merge-base on detached head X-Git-Tag: v1.8.0.1~16^2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=e980765c59c173e9a10ce1069c763645b87fd50c;p=git.git git-pull: Avoid merge-base on detached head git pull --rebase does some clever tricks to find the base for $upstream, but it forgets that we may not have any branch at all. When this happens, git merge-base reports its "usage" help in the middle of an otherwise successful rebase operation, because git-merge is called with one too few parameters. Since we do not need the merge-base trick in the case of a detached HEAD, detect this condition and bypass the clever trick and the usage noise. Signed-off-by: Phil Hord Signed-off-by: Jeff King --- diff --git a/git-pull.sh b/git-pull.sh index 2a10047eb..266e682f6 100755 --- a/git-pull.sh +++ b/git-pull.sh @@ -200,6 +200,7 @@ test true = "$rebase" && { require_clean_work_tree "pull with rebase" "Please commit or stash them." fi oldremoteref= && + test -n "$curr_branch" && . git-parse-remote && remoteref="$(get_remote_merge_branch "$@" 2>/dev/null)" && oldremoteref="$(git rev-parse -q --verify "$remoteref")" &&