diff options
author | Paolo Bonzini <bonzini@gnu.org> | 2008-04-28 11:32:12 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-05-04 17:41:39 -0700 |
commit | a83619d692deeb2565335144078465acb2dd1457 (patch) | |
tree | 568c8aa7b0092ee996e1a4612e89ff252d61ac60 /Documentation | |
parent | Cleanup xread() loops to use read_in_full() (diff) | |
download | tgif-a83619d692deeb2565335144078465acb2dd1457.tar.xz |
add special "matching refs" refspec
This patch provides a way to specify "push matching heads" using a
special refspec ":". This is useful because it allows "push = +:"
as a way to specify that matching refs will be pushed but, in addition,
forced updates will be allowed, which was not possible before.
Signed-off-by: Paolo Bonzini <bonzini@gnu.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/git-push.txt | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/Documentation/git-push.txt b/Documentation/git-push.txt index 0585949137..7d31263aa2 100644 --- a/Documentation/git-push.txt +++ b/Documentation/git-push.txt @@ -46,12 +46,6 @@ specified, the same ref that <src> referred to locally). If the optional leading plus `+` is used, the remote ref is updated even if it does not result in a fast forward update. + -Note: If no explicit refspec is found, (that is neither -on the command line nor in any Push line of the -corresponding remotes file---see below), then "matching" heads are -pushed: for every head that exists on the local side, the remote side is -updated if a head of the same name already exists on the remote side. -+ `tag <tag>` means the same as `refs/tags/<tag>:refs/tags/<tag>`. + A parameter <ref> without a colon pushes the <ref> from the source @@ -59,6 +53,13 @@ repository to the destination repository under the same name. + Pushing an empty <src> allows you to delete the <dst> ref from the remote repository. ++ +The special refspec `:` (or `+:` to allow non-fast forward updates) +directs git to push "matching" heads: for every head that exists on +the local side, the remote side is updated if a head of the same name +already exists on the remote side. This is the default operation mode +if no explicit refspec is found (that is neither on the command line +nor in any Push line of the corresponding remotes file---see below). \--all:: Instead of naming each ref to push, specifies that all |