diff options
author | Junio C Hamano <gitster@pobox.com> | 2013-09-09 14:50:37 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-09-09 14:50:37 -0700 |
commit | 20419de969b8ce0c49d133affdb1bb73eb62815e (patch) | |
tree | 8dd2f6f1b4adc1b2beee854ab1bce32a4f6dd48f /transport.c | |
parent | 3b30ba55e4c14c6939a201e87d3542e157e2b318 (diff) | |
parent | 0f73f8bd7974fcf7f9e4608875323c96c6159829 (diff) | |
download | git-20419de969b8ce0c49d133affdb1bb73eb62815e.tar.gz |
Merge branch 'jc/transport-do-not-use-connect-twice-in-fetch'
The auto-tag-following code in "git fetch" tries to reuse the same
transport twice when the serving end does not cooperate and does
not give tags that point to commits that are asked for as part of
the primary transfer. Unfortunately, Git-aware transport helper
interface is not designed to be used more than once, hence this
does not work over smart-http transfer.
* jc/transport-do-not-use-connect-twice-in-fetch:
builtin/fetch.c: Fix a sparse warning
fetch: work around "transport-take-over" hack
fetch: refactor code that fetches leftover tags
fetch: refactor code that prepares a transport
fetch: rename file-scope global "transport" to "gtransport"
t5802: add test for connect helper
Diffstat (limited to 'transport.c')
-rw-r--r-- | transport.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/transport.c b/transport.c index b321d6a49d..7202b7777d 100644 --- a/transport.c +++ b/transport.c @@ -881,6 +881,8 @@ void transport_take_over(struct transport *transport, transport->push_refs = git_transport_push; transport->disconnect = disconnect_git; transport->smart_options = &(data->options); + + transport->cannot_reuse = 1; } static int is_local(const char *url) |