mirror of
https://github.com/git/git.git
synced 2024-11-14 13:13:01 +01:00
4f5f998fbd
Signed-off-by: Junio C Hamano <gitster@pobox.com>
104 lines
3 KiB
Text
104 lines
3 KiB
Text
git-http-push(1)
|
|
================
|
|
|
|
NAME
|
|
----
|
|
git-http-push - Push objects over HTTP/DAV to another repository
|
|
|
|
|
|
SYNOPSIS
|
|
--------
|
|
'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 cURL
|
|
library 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.
|
|
|
|
|
|
Author
|
|
------
|
|
Written by Nick Hengeveld <nickh@reactrix.com>
|
|
|
|
Documentation
|
|
--------------
|
|
Documentation by Nick Hengeveld
|
|
|
|
GIT
|
|
---
|
|
Part of the linkgit:git[7] suite
|