diff options
author | Junio C Hamano <junkio@cox.net> | 2005-07-13 20:21:54 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-13 20:42:26 -0700 |
commit | 9b011b2fe5379f76c53f20b964d7a3cecb9d8c79 (patch) | |
tree | 5ccf27ba1c526389f1ba8ac7473298f635163bfd /Documentation/pack-protocol.txt | |
parent | 5ccdf4cef212183597a0893c23c91da2ded80694 (diff) | |
download | git-9b011b2fe5379f76c53f20b964d7a3cecb9d8c79.tar.gz git-9b011b2fe5379f76c53f20b964d7a3cecb9d8c79.tar.xz |
[PATCH] Document two pack push-pull protocols.
This documents the two pack push-pull protocols used by the
smart upload-fetch/clone and send/receive commands.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'Documentation/pack-protocol.txt')
-rw-r--r-- | Documentation/pack-protocol.txt | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Documentation/pack-protocol.txt b/Documentation/pack-protocol.txt new file mode 100644 index 000000000..7d6aec409 --- /dev/null +++ b/Documentation/pack-protocol.txt @@ -0,0 +1,38 @@ +There are two Pack push-pull protocols. + +upload-pack (S) | fetch/clone-pack (C) protocol: + + # Tell the puller what commits we have and what their names are + S: SHA1 name + S: ... + S: SHA1 name + S: # flush -- it's your turn + # Tell the pusher what commits we want, and what we have + C: want name + C: .. + C: want name + C: have SHA1 + C: have SHA1 + C: ... + C: # flush -- occasionally ask "had enough?" + S: NAK + C: have SHA1 + C: ... + C: have SHA1 + S: ACK + C: done + S: XXXXXXX -- packfile contents. + +send-pack | receive-pack protocol. + + # Tell the pusher what commits we have and what their names are + C: SHA1 name + C: ... + C: SHA1 name + C: # flush -- it's your turn + # Tell the puller what the pusher has + S: old-SHA1 new-SHA1 name + S: old-SHA1 new-SHA1 name + S: ... + S: # flush -- done with the list + S: XXXXXXX --- packfile contents. |