diff options
| author | Junio C Hamano <junkio@cox.net> | 2005-12-14 17:30:03 -0800 |
|---|---|---|
| committer | Junio C Hamano <junkio@cox.net> | 2005-12-14 17:30:03 -0800 |
| commit | 1ed91937e5cd59fdbdfa5f15f6fac132d2b21ce0 (patch) | |
| tree | f65b929c006c31043213152752ea0c80bf08b9e5 /Documentation/technical | |
| parent | a9572072f0ab0ac97e64b0dc01254a3ad95befe1 (diff) | |
| parent | 294c695d8cfbcf95a5c33fc6ba386f496964defb (diff) | |
Oh, I hate to do this but I ended up merging big usage string
cleanups from Fredrik, git-am enhancements that made a lot of
sense for non mbox users from HPA, and rebase changes (done
independently by me and Lukas) among other things, so git is
still in perpetual state of 1.0rc. 1.0 will probably be next
Wednesday, but who knows.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'Documentation/technical')
| -rw-r--r-- | Documentation/technical/pack-protocol.txt | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/Documentation/technical/pack-protocol.txt b/Documentation/technical/pack-protocol.txt new file mode 100644 index 0000000000..9cd48b4859 --- /dev/null +++ b/Documentation/technical/pack-protocol.txt @@ -0,0 +1,41 @@ +Pack transfer protocols +======================= + +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. |
