diff options
author | Chris Rorvick <chris@rorvick.com> | 2012-11-29 19:41:37 -0600 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-12-02 01:44:34 -0800 |
commit | dbfeddb12e5bb540ed3c852eebda3df9117bd150 (patch) | |
tree | 7c5c6582390c7dabd839b72fafd074b4323b23d9 /Documentation/git-push.txt | |
parent | 8c5f6f717d136c5a0e9d6d3879bf2a7bdeb42154 (diff) | |
download | git-dbfeddb12e5bb540ed3c852eebda3df9117bd150.tar.gz |
push: require force for refs under refs/tags/
References are allowed to update from one commit-ish to another if the
former is an ancestor of the latter. This behavior is oriented to
branches which are expected to move with commits. Tag references are
expected to be static in a repository, though, thus an update to
something under refs/tags/ should be rejected unless the update is
forced.
Signed-off-by: Chris Rorvick <chris@rorvick.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'Documentation/git-push.txt')
-rw-r--r-- | Documentation/git-push.txt | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/Documentation/git-push.txt b/Documentation/git-push.txt index fe46c4258a..09bdec75bc 100644 --- a/Documentation/git-push.txt +++ b/Documentation/git-push.txt @@ -51,11 +51,12 @@ be named. If `:`<dst> is omitted, the same ref as <src> will be updated. + The object referenced by <src> is used to update the <dst> reference -on the remote side, but by default this is only allowed if the -update can fast-forward <dst>. By having the optional leading `+`, -you can tell git to update the <dst> ref even when the update is not a -fast-forward. This does *not* attempt to merge <src> into <dst>. See -EXAMPLES below for details. +on the remote side. By default this is only allowed if <dst> is not +under refs/tags/, and then only if it can fast-forward <dst>. By having +the optional leading `+`, you can tell git to update the <dst> ref even +if it is not allowed by default (e.g., it is not a fast-forward.) This +does *not* attempt to merge <src> into <dst>. See EXAMPLES below for +details. + `tag <tag>` means the same as `refs/tags/<tag>:refs/tags/<tag>`. + |