In get_remote_merge_branch 'git for-each-ref' is used to know the upstream branch of the current branch ($curr_branch). But $curr_branch can be empty when in detached HEAD, so the call to for-each-ref is made without a pattern.
Quote the $curr_branch variable in the git for-each-ref call to always provide a pattern (the current branch or an empty string) Otherwise it would mean all refs.
This fixes a bug reported by Sverre Rabbelier. The overall results were correct but not the output text.
Signed-off-by: Santi Béjar <santi@agolina.net> --- Hi *,
Sorry Sverre, but the patch you tested fixed your case but broke all the others :(
Hope you can also test it. Now it passes the test suite.
Thanks, Santi git-parse-remote.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
Show changes to git-parse-remote.sh +1 −1
diff --git a/git-parse-remote.sh b/git-parse-remote.sh index 5f47b18..07060c3 100644 --- a/git-parse-remote.sh +++ b/git-parse-remote.sh @@ -68,7 +68,7 @@ get_remote_merge_branch () { test -z "$origin" && origin=$default curr_branch=$(git symbolic-ref -q HEAD) [ "$origin" = "$default" ] && - echo $(git for-each-ref --format='%(upstream)' $curr_branch) + echo $(git for-each-ref --format='%(upstream)' "$curr_branch") ;; *) repo=$1
-- 1.7.3.3.399.gea47f