Browse Source

Merge branch 'bc/maint-fetch-url-only'

* bc/maint-fetch-url-only:
  builtin/fetch.c: ignore merge config when not fetching from branch's remote
  t/t5510: demonstrate failure to fetch when current branch has merge ref
maint
Junio C Hamano 14 years ago
parent
commit
e250c5914f
  1. 4
      builtin/fetch.c
  2. 6
      t/t5510-fetch.sh

4
builtin/fetch.c

@ -146,7 +146,9 @@ static struct ref *get_ref_map(struct transport *transport,
struct remote *remote = transport->remote; struct remote *remote = transport->remote;
struct branch *branch = branch_get(NULL); struct branch *branch = branch_get(NULL);
int has_merge = branch_has_merge_config(branch); int has_merge = branch_has_merge_config(branch);
if (remote && (remote->fetch_refspec_nr || has_merge)) { if (remote &&
(remote->fetch_refspec_nr ||
(has_merge && !strcmp(branch->remote_name, remote->name)))) {
for (i = 0; i < remote->fetch_refspec_nr; i++) { for (i = 0; i < remote->fetch_refspec_nr; i++) {
get_fetch_map(remote_refs, &remote->fetch[i], &tail, 0); get_fetch_map(remote_refs, &remote->fetch[i], &tail, 0);
if (remote->fetch[i].dst && if (remote->fetch[i].dst &&

6
t/t5510-fetch.sh

@ -240,6 +240,12 @@ test_expect_success 'fetch with a non-applying branch.<name>.merge' '
git fetch blub git fetch blub
' '


test_expect_success 'fetch from GIT URL with a non-applying branch.<name>.merge' '
git update-ref -d FETCH_HEAD &&
git fetch one &&
git rev-parse --verify FETCH_HEAD
'

# the strange name is: a\!'b # the strange name is: a\!'b
test_expect_success 'quoting of a strangely named repo' ' test_expect_success 'quoting of a strangely named repo' '
test_must_fail git fetch "a\\!'\''b" > result 2>&1 && test_must_fail git fetch "a\\!'\''b" > result 2>&1 &&

Loading…
Cancel
Save