diff options
Diffstat (limited to 'Documentation/git-send-pack.txt')
-rw-r--r-- | Documentation/git-send-pack.txt | 48 |
1 files changed, 47 insertions, 1 deletions
diff --git a/Documentation/git-send-pack.txt b/Documentation/git-send-pack.txt index 245a7d0bd..6192c5dc4 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-receive-pack>] [<host>:]<directory> [<head>...] +'git-send-pack' [--all] [--exec=<git-receive-pack>] [<host>:]<directory> [<head>...] 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. + <host>:: A remote host to house the repository. When this part is specified, 'git-receive-pack' is invoked via @@ -33,6 +37,48 @@ OPTIONS <directory>:: The repository to update. +<head>...: + 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 '<head>' if you use +this flag. + +Without '--all' and without any '<head>', the refs that exist +both on the local side and on the remote side are updated. + +When '<head>'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 '<name>' is just a shorthand for '<name>:<name>'. +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 <src> does not match exactly one of local + refs. + + - It is an error if <dst> matches more than one remote refs. + + - If <dst> does not match any remote ref, either + + - it has to start with "refs/"; <dst> is used as the + destination literally in this case. + + - <src> == <dst> and the ref that matched the <src> must not + exist in the set of remote refs; the ref matched <src> + locally is used as the name of the destination. + + Author ------ Written by Linus Torvalds <torvalds@osdl.org> |