]>
Commit | Line | Data |
---|---|---|
58e60dd2 NH |
1 | git-http-push(1) |
2 | ================ | |
3 | ||
4 | NAME | |
5 | ---- | |
c3f0baac | 6 | git-http-push - Push objects over HTTP/DAV to another repository |
58e60dd2 NH |
7 | |
8 | ||
9 | SYNOPSIS | |
10 | -------- | |
fe5d1d3e | 11 | 'git-http-push' [--all] [--dry-run] [--force] [--verbose] <url> <ref> [<ref>...] |
58e60dd2 NH |
12 | |
13 | DESCRIPTION | |
14 | ----------- | |
15 | Sends missing objects to remote repository, and updates the | |
16 | remote branch. | |
17 | ||
4f5f998f JH |
18 | *NOTE*: This command is temporarily disabled if your cURL |
19 | library is older than 7.16, as the combination has been reported | |
20 | not to work and sometimes corrupts repository. | |
58e60dd2 NH |
21 | |
22 | OPTIONS | |
23 | ------- | |
d8190a8e | 24 | --all:: |
58e60dd2 NH |
25 | Do not assume that the remote repository is complete in its |
26 | current state, and verify all objects in the entire local | |
27 | ref's history exist in the remote repository. | |
28 | ||
29 | --force:: | |
30 | Usually, the command refuses to update a remote ref that | |
31 | is not an ancestor of the local ref used to overwrite it. | |
32 | This flag disables the check. What this means is that | |
33 | the remote repository can lose commits; use it with | |
34 | care. | |
35 | ||
fe5d1d3e SP |
36 | --dry-run:: |
37 | Do everything except actually send the updates. | |
38 | ||
58e60dd2 NH |
39 | --verbose:: |
40 | Report the list of objects being walked locally and the | |
41 | list of objects successfully sent to the remote repository. | |
42 | ||
d8190a8e AR |
43 | -d, -D:: |
44 | Remove <ref> from remote repository. The specified branch | |
45 | cannot be the remote HEAD. If -d is specified the following | |
46 | other conditions must also be met: | |
47 | ||
48 | - Remote HEAD must resolve to an object that exists locally | |
49 | - Specified branch resolves to an object that exists locally | |
50 | - Specified branch is an ancestor of the remote HEAD | |
51 | ||
23bed43d | 52 | <ref>...:: |
58e60dd2 NH |
53 | The remote refs to update. |
54 | ||
55 | ||
56 | Specifying the Refs | |
57 | ------------------- | |
58 | ||
59 | A '<ref>' specification can be either a single pattern, or a pair | |
60 | of such patterns separated by a colon ":" (this means that a ref name | |
a6080a0a | 61 | cannot have a colon in it). A single pattern '<name>' is just a |
58e60dd2 NH |
62 | shorthand for '<name>:<name>'. |
63 | ||
64 | Each pattern pair consists of the source side (before the colon) | |
65 | and the destination side (after the colon). The ref to be | |
66 | pushed is determined by finding a match that matches the source | |
67 | side, and where it is pushed is determined by using the | |
68 | destination side. | |
69 | ||
70 | - It is an error if <src> does not match exactly one of the | |
71 | local refs. | |
72 | ||
73 | - If <dst> does not match any remote ref, either | |
74 | ||
75 | * it has to start with "refs/"; <dst> is used as the | |
76 | destination literally in this case. | |
77 | ||
78 | * <src> == <dst> and the ref that matched the <src> must not | |
79 | exist in the set of remote refs; the ref matched <src> | |
80 | locally is used as the name of the destination. | |
81 | ||
82 | Without '--force', the <src> ref is stored at the remote only if | |
83 | <dst> does not exist, or <dst> is a proper subset (i.e. an | |
84 | ancestor) of <src>. This check, known as "fast forward check", | |
85 | is performed in order to avoid accidentally overwriting the | |
86 | remote ref and lose other peoples' commits from there. | |
87 | ||
88 | With '--force', the fast forward check is disabled for all refs. | |
89 | ||
90 | Optionally, a <ref> parameter can be prefixed with a plus '+' sign | |
91 | to disable the fast-forward check only on that ref. | |
92 | ||
93 | ||
94 | Author | |
95 | ------ | |
96 | Written by Nick Hengeveld <nickh@reactrix.com> | |
97 | ||
98 | Documentation | |
99 | -------------- | |
100 | Documentation by Nick Hengeveld | |
101 | ||
102 | GIT | |
103 | --- | |
5162e697 | 104 | Part of the linkgit:git[7] suite |