| git-http-push(1) | |
| ================ | |
| NAME | |
| ---- | |
| git-http-push - Push objects over HTTP/DAV to another repository | |
| SYNOPSIS | |
| -------- | |
| [verse] | |
| 'git http-push' [--all] [--dry-run] [--force] [--verbose] <url> <ref> [<ref>...] | |
| DESCRIPTION | |
| ----------- | |
| Sends missing objects to remote repository, and updates the | |
| remote branch. | |
| *NOTE*: 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. | |
| OPTIONS | |
| ------- | |
| --all:: | |
| Do not assume that the remote repository is complete in its | |
| current state, and verify all objects in the entire local | |
| ref's history exist in the remote repository. | |
| --force:: | |
| 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. | |
| --dry-run:: | |
| Do everything except actually send the updates. | |
| --verbose:: | |
| Report the list of objects being walked locally and the | |
| list of objects successfully sent to the remote repository. | |
| -d:: | |
| -D:: | |
| 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: | |
| - Remote HEAD must resolve to an object that exists locally | |
| - Specified branch resolves to an object that exists locally | |
| - Specified branch is an ancestor of the remote HEAD | |
| <ref>...:: | |
| The remote refs to update. | |
| Specifying the Refs | |
| ------------------- | |
| A '<ref>' 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 '<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 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. | |
| - It is an error if <src> does not match exactly one of the | |
| local 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. | |
| Without `--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' commits from there. | |
| With `--force`, the fast-forward check is disabled for all refs. | |
| Optionally, a <ref> parameter can be prefixed with a plus '+' sign | |
| to disable the fast-forward check only on that ref. | |
| GIT | |
| --- | |
| Part of the linkgit:git[1] suite |