diff options
author | Shawn O. Pearce <spearce@spearce.org> | 2011-03-14 17:59:40 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-03-15 12:14:35 -0700 |
commit | 3e63b21aced116badd30a279c479535449a63560 (patch) | |
tree | 665e66ec370b0f53c3e5634c1e27f6f4cff81d86 /http-fetch.c | |
parent | upload-pack: More aggressively send 'ACK %s ready' (diff) | |
download | tgif-3e63b21aced116badd30a279c479535449a63560.tar.xz |
upload-pack: Implement no-done capability
If the client requests both multi_ack_detailed and no-done then
upload-pack is free to immediately send a PACK following its first
'ACK %s ready' message. The upload-pack response actually winds
up being:
ACK %s common
... (maybe more) ...
ACK %s ready
NAK
ACK %s
PACK.... the pack stream ....
For smart HTTP connections this saves one HTTP RPC, reducing
the overall latency for a trivial fetch. For git:// and ssh://
a no-done option slightly reduces latency by removing one
server->client->server round-trip at the end of the common
ancestor negotiation.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'http-fetch.c')
0 files changed, 0 insertions, 0 deletions