'\" t .\" Title: git-http-push .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.79.1 .\" Date: 09/28/2018 .\" Manual: Git Manual .\" Source: Git 2.11.0 .\" Language: English .\" .TH "GIT\-HTTP\-PUSH" "1" "09/28/2018" "Git 2\&.11\&.0" "Git Manual" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" git-http-push \- Push objects over HTTP/DAV to another repository .SH "SYNOPSIS" .sp .nf \fIgit http\-push\fR [\-\-all] [\-\-dry\-run] [\-\-force] [\-\-verbose] [\&...] .fi .sp .SH "DESCRIPTION" .sp Sends missing objects to remote repository, and updates the remote branch\&. .sp \fBNOTE\fR: This command is temporarily disabled if your libcurl is older than 7\&.16, as the combination has been reported not to work and sometimes corrupts repository\&. .SH "OPTIONS" .PP \-\-all .RS 4 Do not assume that the remote repository is complete in its current state, and verify all objects in the entire local ref\(cqs history exist in the remote repository\&. .RE .PP \-\-force .RS 4 Usually, the command refuses to update a remote ref that is not an ancestor of the local ref used to overwrite it\&. This flag disables the check\&. What this means is that the remote repository can lose commits; use it with care\&. .RE .PP \-\-dry\-run .RS 4 Do everything except actually send the updates\&. .RE .PP \-\-verbose .RS 4 Report the list of objects being walked locally and the list of objects successfully sent to the remote repository\&. .RE .PP \-d, \-D .RS 4 Remove from remote repository\&. The specified branch cannot be the remote HEAD\&. If \-d is specified the following other conditions must also be met: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Remote HEAD must resolve to an object that exists locally .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Specified branch resolves to an object that exists locally .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Specified branch is an ancestor of the remote HEAD .RE .RE .PP \&... .RS 4 The remote refs to update\&. .RE .SH "SPECIFYING THE REFS" .sp A \fI\fR specification can be either a single pattern, or a pair of such patterns separated by a colon ":" (this means that a ref name cannot have a colon in it)\&. A single pattern \fI\fR is just a shorthand for \fI:\fR\&. .sp Each pattern pair consists of the source side (before the colon) and the destination side (after the colon)\&. The ref to be pushed is determined by finding a match that matches the source side, and where it is pushed is determined by using the destination side\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} It is an error if does not match exactly one of the local refs\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} If does not match any remote ref, either .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} it has to start with "refs/"; is used as the destination literally in this case\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} == 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\&. .RE .RE .sp Without \(oq\-\-force`, the ref is stored at the remote only if does not exist, or is a proper subset (i\&.e\&. an ancestor) of \&. This check, known as "fast\-forward check", is performed in order to avoid accidentally overwriting the remote ref and lose other peoples\(cq commits from there\&. .sp With \fB\-\-force\fR, the fast\-forward check is disabled for all refs\&. .sp Optionally, a parameter can be prefixed with a plus \fI+\fR sign to disable the fast\-forward check only on that ref\&. .SH "GIT" .sp Part of the \fBgit\fR(1) suite