Autogenerated manpages for v2.42.0-424-gceadf0
[git-manpages.git] / man1 / git-http-push.1
blob13f2545509914dd66fbf65d8c7cc53fd161dddd9
1 '\" t
2 .\"     Title: git-http-push
3 .\"    Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author]
4 .\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
5 .\"      Date: 2023-10-20
6 .\"    Manual: Git Manual
7 .\"    Source: Git 2.42.0.424.gceadf0f3cf
8 .\"  Language: English
9 .\"
10 .TH "GIT\-HTTP\-PUSH" "1" "2023\-10\-20" "Git 2\&.42\&.0\&.424\&.gceadf0" "Git Manual"
11 .\" -----------------------------------------------------------------
12 .\" * Define some portability stuff
13 .\" -----------------------------------------------------------------
14 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15 .\" http://bugs.debian.org/507673
16 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
17 .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
18 .ie \n(.g .ds Aq \(aq
19 .el       .ds Aq '
20 .\" -----------------------------------------------------------------
21 .\" * set default formatting
22 .\" -----------------------------------------------------------------
23 .\" disable hyphenation
24 .nh
25 .\" disable justification (adjust text to left margin only)
26 .ad l
27 .\" -----------------------------------------------------------------
28 .\" * MAIN CONTENT STARTS HERE *
29 .\" -----------------------------------------------------------------
30 .SH "NAME"
31 git-http-push \- Push objects over HTTP/DAV to another repository
32 .SH "SYNOPSIS"
33 .sp
34 .nf
35 \fIgit http\-push\fR [\-\-all] [\-\-dry\-run] [\-\-force] [\-\-verbose] <URL> <ref> [<ref>\&...]
36 .fi
37 .sp
38 .SH "DESCRIPTION"
39 .sp
40 Sends missing objects to remote repository, and updates the remote branch\&.
41 .sp
42 \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\&.
43 .SH "OPTIONS"
44 .PP
45 \-\-all
46 .RS 4
47 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\&.
48 .RE
49 .PP
50 \-\-force
51 .RS 4
52 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\&.
53 .RE
54 .PP
55 \-\-dry\-run
56 .RS 4
57 Do everything except actually send the updates\&.
58 .RE
59 .PP
60 \-\-verbose
61 .RS 4
62 Report the list of objects being walked locally and the list of objects successfully sent to the remote repository\&.
63 .RE
64 .PP
65 \-d, \-D
66 .RS 4
67 Remove <ref> from remote repository\&. The specified branch cannot be the remote HEAD\&. If \-d is specified the following other conditions must also be met:
68 .sp
69 .RS 4
70 .ie n \{\
71 \h'-04'\(bu\h'+03'\c
72 .\}
73 .el \{\
74 .sp -1
75 .IP \(bu 2.3
76 .\}
77 Remote HEAD must resolve to an object that exists locally
78 .RE
79 .sp
80 .RS 4
81 .ie n \{\
82 \h'-04'\(bu\h'+03'\c
83 .\}
84 .el \{\
85 .sp -1
86 .IP \(bu 2.3
87 .\}
88 Specified branch resolves to an object that exists locally
89 .RE
90 .sp
91 .RS 4
92 .ie n \{\
93 \h'-04'\(bu\h'+03'\c
94 .\}
95 .el \{\
96 .sp -1
97 .IP \(bu 2.3
98 .\}
99 Specified branch is an ancestor of the remote HEAD
103 <ref>\&...
104 .RS 4
105 The remote refs to update\&.
107 .SH "SPECIFYING THE REFS"
109 A \fI<ref>\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<name>\fR is just a shorthand for \fI<name>:<name>\fR\&.
111 Each pattern pair \fI<src>:<dst>\fR 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\&.
113 .RS 4
114 .ie n \{\
115 \h'-04'\(bu\h'+03'\c
117 .el \{\
118 .sp -1
119 .IP \(bu 2.3
121 It is an error if
122 \fI<src>\fR
123 does not match exactly one of the local refs\&.
126 .RS 4
127 .ie n \{\
128 \h'-04'\(bu\h'+03'\c
130 .el \{\
131 .sp -1
132 .IP \(bu 2.3
135 \fI<dst>\fR
136 does not match any remote ref, either
138 .RS 4
139 .ie n \{\
140 \h'-04'\(bu\h'+03'\c
142 .el \{\
143 .sp -1
144 .IP \(bu 2.3
146 it has to start with "refs/"; <dst> is used as the destination literally in this case\&.
149 .RS 4
150 .ie n \{\
151 \h'-04'\(bu\h'+03'\c
153 .el \{\
154 .sp -1
155 .IP \(bu 2.3
157 <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\&.
161 Without \(oq\-\-force`, the <src> ref is stored at the remote only if <dst> does not exist, or <dst> is a proper subset (i\&.e\&. an ancestor) of <src>\&. 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\&.
163 With \fB\-\-force\fR, the fast\-forward check is disabled for all refs\&.
165 Optionally, a <ref> parameter can be prefixed with a plus \fI+\fR sign to disable the fast\-forward check only on that ref\&.
166 .SH "GIT"
168 Part of the \fBgit\fR(1) suite