summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xgit-parse-remote.sh11
1 files changed, 9 insertions, 2 deletions
diff --git a/git-parse-remote.sh b/git-parse-remote.sh
index 871c08f097..f163821d03 100755
--- a/git-parse-remote.sh
+++ b/git-parse-remote.sh
@@ -136,6 +136,8 @@ canon_refs_list_for_fetch () {
if test "$1" = "-d"
then
shift ; remote="$1" ; shift
+ set x $(expand_refs_wildcard "$@")
+ shift
if test "$remote" = "$(get_default_remote)"
then
curr_branch=$(git-symbolic-ref HEAD | \
@@ -143,8 +145,13 @@ canon_refs_list_for_fetch () {
merge_branches=$(git-repo-config \
--get-all "branch.${curr_branch}.merge")
fi
- set x $(expand_refs_wildcard "$@")
- shift
+ # If we are fetching only one branch, then first branch
+ # is the only thing that makes sense to merge anyway,
+ # so there is no point refusing that traditional rule.
+ if test $# != 1 && test "z$merge_branches" = z
+ then
+ merge_branches=..this..would..never..match..
+ fi
fi
for ref
do