Also move pack protocol description to technical/.
Signed-off-by: Junio C Hamano <junkio@cox.net>
SYNOPSIS
--------
-git-cvsapplycommmit.perl
+git-cvsexportcommmit.perl
[ -h ] [ -v ] [ -c ] [ -p ] [PARENTCOMMIT] COMMITID
gitlink:git-name-rev[1]::
Find symbolic names for given revs.
+gitlink:git-pack-redundant[1]::
+ Find redundant pack files.
+
gitlink:git-rev-list[1]::
Lists commit objects in reverse chronological order.
gitlink:git-send-pack[1]::
Pushes to a remote repository, intelligently.
+gitlink:git-http-push[1]::
+ Push missing objects using HTTP/DAV.
+
gitlink:git-shell[1]::
Restricted shell for GIT-only SSH access.
gitlink:git-cvsimport[1]::
Salvage your data out of another SCM people love to hate.
+gitlink:git-cvsexportcommit[1]::
+ Export a single commit to a CVS checkout.
+
gitlink:git-lost-found[1]::
Recover lost refs that luckily have not yet been pruned.
+++ /dev/null
-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.
--- /dev/null
+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.