diff options
author | Chris Rorvick <chris@rorvick.com> | 2012-12-02 21:27:51 -0600 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-12-03 08:04:09 -0800 |
commit | b450568209c8ae270d26ee7fda2e4687ad8a5327 (patch) | |
tree | 7141322da5346153ef97169966607c67ff078757 | |
parent | push: rename config variable for more general use (diff) | |
download | tgif-b450568209c8ae270d26ee7fda2e4687ad8a5327.tar.xz |
push: allow already-exists advice to be disabled
Add 'advice.pushAlreadyExists' option to disable the advice shown when
an update is rejected for a reference that is not allowed to update at
all (verses those that are allowed to fast-forward.)
Signed-off-by: Chris Rorvick <chris@rorvick.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | Documentation/config.txt | 8 | ||||
-rw-r--r-- | advice.c | 2 | ||||
-rw-r--r-- | advice.h | 1 | ||||
-rw-r--r-- | builtin/push.c | 2 |
4 files changed, 11 insertions, 2 deletions
diff --git a/Documentation/config.txt b/Documentation/config.txt index 92903f22d9..90e7d10bad 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -142,8 +142,9 @@ advice.*:: -- pushUpdateRejected:: Set this variable to 'false' if you want to disable - 'pushNonFFCurrent', 'pushNonFFDefault', and - 'pushNonFFMatching' simultaneously. + 'pushNonFFCurrent', 'pushNonFFDefault', + 'pushNonFFMatching', and 'pushAlreadyExists' + simultaneously. pushNonFFCurrent:: Advice shown when linkgit:git-push[1] fails due to a non-fast-forward update to the current branch. @@ -158,6 +159,9 @@ advice.*:: 'matching refs' explicitly (i.e. you used ':', or specified a refspec that isn't your current branch) and it resulted in a non-fast-forward error. + pushAlreadyExists:: + Shown when linkgit:git-push[1] rejects an update that + does not qualify for fast-forwarding (e.g., a tag.) statusHints:: Show directions on how to proceed from the current state in the output of linkgit:git-status[1] and in @@ -4,6 +4,7 @@ int advice_push_update_rejected = 1; int advice_push_non_ff_current = 1; int advice_push_non_ff_default = 1; int advice_push_non_ff_matching = 1; +int advice_push_already_exists = 1; int advice_status_hints = 1; int advice_commit_before_merge = 1; int advice_resolve_conflict = 1; @@ -18,6 +19,7 @@ static struct { { "pushnonffcurrent", &advice_push_non_ff_current }, { "pushnonffdefault", &advice_push_non_ff_default }, { "pushnonffmatching", &advice_push_non_ff_matching }, + { "pushalreadyexists", &advice_push_already_exists }, { "statushints", &advice_status_hints }, { "commitbeforemerge", &advice_commit_before_merge }, { "resolveconflict", &advice_resolve_conflict }, @@ -7,6 +7,7 @@ extern int advice_push_update_rejected; extern int advice_push_non_ff_current; extern int advice_push_non_ff_default; extern int advice_push_non_ff_matching; +extern int advice_push_already_exists; extern int advice_status_hints; extern int advice_commit_before_merge; extern int advice_resolve_conflict; diff --git a/builtin/push.c b/builtin/push.c index cf5ecfaf04..8491e431e4 100644 --- a/builtin/push.c +++ b/builtin/push.c @@ -247,6 +247,8 @@ static void advise_checkout_pull_push(void) static void advise_ref_already_exists(void) { + if (!advice_push_already_exists || !advice_push_update_rejected) + return; advise(_(message_advice_ref_already_exists)); } |