| git-send-pack(1) |
| ================ |
| v0.1, July 2005 |
| |
| NAME |
| ---- |
| git-send-pack - Push missing objects packed. |
| |
| |
| SYNOPSIS |
| -------- |
| 'git-send-pack' [--all] [--exec=<git-receive-pack>] [<host>:]<directory> [<head>...] |
| |
| DESCRIPTION |
| ----------- |
| Invokes 'git-receive-pack' on a possibly remote repository, and |
| updates it from the current repository, sending named heads. |
| |
| |
| OPTIONS |
| ------- |
| --exec=<git-receive-pack>:: |
| Path to the 'git-receive-pack' program on the remote |
| end. Sometimes useful when pushing to a remote |
| 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 |
| ssh. |
| |
| <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> |
| |
| Documentation |
| -------------- |
| Documentation by Junio C Hamano. |
| |
| GIT |
| --- |
| Part of the link:git.html[git] suite |