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 /builtin | |
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 'builtin')
-rw-r--r-- | builtin/push.c | 2 | ||||
-rw-r--r-- | builtin/send-pack.c | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/builtin/push.c b/builtin/push.c index e08485d123..83a3cc80c3 100644 --- a/builtin/push.c +++ b/builtin/push.c @@ -222,7 +222,7 @@ static const char message_advice_checkout_pull_push[] = static const char message_advice_ref_already_exists[] = N_("Updates were rejected because the destination reference already exists\n" - "in the remote and the update is not a fast-forward."); + "in the remote."); static void advise_pull_before_push(void) { diff --git a/builtin/send-pack.c b/builtin/send-pack.c index 9f986077aa..f849e0a4a0 100644 --- a/builtin/send-pack.c +++ b/builtin/send-pack.c @@ -44,6 +44,11 @@ static void print_helper_status(struct ref *ref) msg = "non-fast forward"; break; + case REF_STATUS_REJECT_ALREADY_EXISTS: + res = "error"; + msg = "already exists"; + break; + case REF_STATUS_REJECT_NODELETE: case REF_STATUS_REMOTE_REJECT: res = "error"; |