From 9553d20bd216a9e3b1acc1b9da835ff230302626 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 3 Aug 2005 17:15:44 -0700 Subject: git-send-pack: documentation Describe the renaming push. The wording is horrible and I would appreciate a rewrite, but it is better than nothing ;-). Signed-off-by: Junio C Hamano --- Documentation/git-send-pack.txt | 48 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/Documentation/git-send-pack.txt b/Documentation/git-send-pack.txt index 245a7d0bde..6192c5dc41 100644 --- a/Documentation/git-send-pack.txt +++ b/Documentation/git-send-pack.txt @@ -9,7 +9,7 @@ git-send-pack - Push missing objects packed. SYNOPSIS -------- -'git-send-pack' [--exec=] [:] [...] +'git-send-pack' [--all] [--exec=] [:] [...] DESCRIPTION ----------- @@ -25,6 +25,10 @@ OPTIONS repository over ssh, and you do not have the program in a directory on the default $PATH. +--all:: + Instead of explicitly specifying which refs to update, + update all refs that locally exist. + :: A remote host to house the repository. When this part is specified, 'git-receive-pack' is invoked via @@ -33,6 +37,48 @@ OPTIONS :: The repository to update. +...: + The remote refs to update. + + +Specifying the Refs +------------------- + +There are three ways to specify which refs to update on the +remote end. + +With '--all' flag, all refs that exist locally are transfered to +the remote side. You cannot specify any '' if you use +this flag. + +Without '--all' and without any '', the refs that exist +both on the local side and on the remote side are updated. + +When ''s are specified explicitly, it can be either a +single pattern, or a pair of such pattern separated by a colon +':' (this means that a ref name cannot have a colon in it). A +single pattern '' is just a shorthand for ':'. +Each pattern pair consists of the source side (before the colon) +and the destination side (after the colon). The ref that is +pushed is determined by finding a match that matches the source +side, and where it is pushed is determined by using the +destination side. + + - It is an error if does not match exactly one of local + refs. + + - It is an error if matches more than one remote refs. + + - If does not match any remote ref, either + + - it has to start with "refs/"; is used as the + destination literally in this case. + + - == and the ref that matched the must not + exist in the set of remote refs; the ref matched + locally is used as the name of the destination. + + Author ------ Written by Linus Torvalds -- cgit v1.2.3