1 .\"Generated by db2man.xsl. Don't modify this, modify the source.
10 .de Sp \" Vertical space (when we can't use .PP)
16 .ie \\n(.$>=3 .ne \\$3
20 .TH "GIT-PUSH" 1 "" "" ""
22 git-push \- Update remote refs along with associated objects
26 \fIgit\-push\fR [\-\-all] [\-\-tags] [\-\-force] <repository> <refspec>...
31 Updates remote refs using local refs, while sending objects necessary to complete the given refs\&.
34 You can make interesting things happen to a repository every time you push into it, by setting up \fIhooks\fR there\&. See documentation for \fBgit\-receive\-pack\fR(1)\&.
40 The "remote" repository that is destination of a push operation\&. See the section GIT URLS below\&.
44 The canonical format of a <refspec> parameter is +?<src>:<dst>; that is, an optional plus +, followed by the source ref, followed by a colon :, followed by the destination ref\&.
46 The <src> side can be an arbitrary "SHA1 expression" that can be used as an argument to git\-cat\-file \-t\&. E\&.g\&. master~4 (push four parents before the current master head)\&.
48 The local ref that matches <src> is used to fast forward the remote ref that matches <dst>\&. If the optional plus + is used, the remote ref is updated even if it does not result in a fast forward update\&.
50 Note: If no explicit refspec is found, (that is neither on the command line nor in any Push line of the corresponding remotes file\-\-\-see below), then all the refs that exist both on the local side and on the remote side are updated\&.
52 Some short\-cut notations are also supported\&.
57 tag <tag> means the same as refs/tags/<tag>:refs/tags/<tag>\&.
60 A parameter <ref> without a colon is equivalent to <ref>:<ref>, hence updates <ref> in the destination from <ref> in the source\&.
67 Instead of naming each ref to push, specifies that all refs be pushed\&.
71 All refs under $GIT_DIR/refs/tags are pushed, in addition to refspecs explicitly listed on the command line\&.
75 Usually, the command refuses to update a remote ref that is not a descendent of the local ref used to overwrite it\&. This flag disables the check\&. This can cause the remote repository to lose commits; use it with care\&.
80 One of the following notations can be used to name the remote repository:
86 rsync://host\&.xz/path/to/repo\&.git/
89 http://host\&.xz/path/to/repo\&.git/
92 https://host\&.xz/path/to/repo\&.git/
95 git://host\&.xz/path/to/repo\&.git/
98 git://host\&.xz/~user/path/to/repo\&.git/
101 ssh://host\&.xz/path/to/repo\&.git/
104 ssh://host\&.xz/~user/path/to/repo\&.git/
107 ssh://host\&.xz/~/path/to/repo\&.git
111 SSH Is the default transport protocol and also supports an scp\-like syntax\&. Both syntaxes support username expansion, as does the native git protocol\&. The following three are identical to the last three above, respectively:
117 host\&.xz:/path/to/repo\&.git/
120 host\&.xz:~user/path/to/repo\&.git/
123 host\&.xz:path/to/repo\&.git
127 To sync with a local directory, use:
139 In addition to the above, as a short\-hand, the name of a file in $GIT_DIR/remotes directory can be given; the named file should be in the following format:
142 URL: one of the above URL format
148 Then such a short\-hand is specified in place of <repository> without <refspec> parameters on the command line, <refspec> specified on Push: lines or Pull: lines are used for git\-push and git\-fetch/git\-pull, respectively\&. Multiple Push: and and Pull: lines may be specified for additional branch mappings\&.
151 The name of a file in $GIT_DIR/branches directory can be specified as an older notation short\-hand; the named file should contain a single line, a URL in one of the above formats, optionally followed by a hash # and the name of remote head (URL fragment notation)\&. $GIT_DIR/branches/<remote> file that stores a <url> without the fragment is equivalent to have this in the corresponding file in the $GIT_DIR/remotes/ directory\&.
155 Pull: refs/heads/master:<remote>
159 while having <url>#<head> is equivalent to
163 Pull: refs/heads/<head>:<remote>
169 Written by Junio C Hamano <junkio@cox\&.net>
174 Documentation by Junio C Hamano and the git\-list <git@vger\&.kernel\&.org>\&.
179 Part of the \fBgit\fR(7) suite