From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Subject: [PATCH 6/6] receive-pack: default receive.denyDeleteCurrent to refuse
Date: Mon, 9 Feb 2009 01:09:25 -0800 [thread overview]
Message-ID: <1234170565-6740-7-git-send-email-gitster@pobox.com> (raw)
In-Reply-To: <1234170565-6740-6-git-send-email-gitster@pobox.com>
This is for a future release that switches the default to refuse.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
builtin-receive-pack.c | 30 ++++++++++++------------------
t/t5400-send-pack.sh | 2 +-
2 files changed, 13 insertions(+), 19 deletions(-)
diff --git a/builtin-receive-pack.c b/builtin-receive-pack.c
index f7e04c4..44163ac 100644
--- a/builtin-receive-pack.c
+++ b/builtin-receive-pack.c
@@ -247,30 +247,24 @@ static void warn_unconfigured_deny(void)
warning(warn_unconfigured_deny_msg[i]);
}
-static char *warn_unconfigured_deny_delete_current_msg[] = {
- "Deleting the current branch can cause confusion by making the next",
- "'git clone' not check out any file.",
+static char *refuse_unconfigured_deny_delete_current_msg[] = {
+ "By default, deleting the current branch is denied, because the next",
+ "'git clone' won't result in any file checked out, causing confusion.",
"",
"You can set 'receive.denyDeleteCurrent' configuration variable to",
- "'refuse' in the remote repository to disallow deleting the current",
- "branch.",
+ "'warn' or 'ignore' in the remote repository to allow deleting the",
+ "current branch, with or without a warning message.",
"",
- "You can set it to 'ignore' to allow such a delete without a warning.",
- "",
- "To make this warning message less loud, you can set it to 'warn'.",
- "",
- "Note that the default will change in a future version of git",
- "to refuse deleting the current branch unless you have the",
- "configuration variable set to either 'ignore' or 'warn'."
+ "To squelch this message, you can set it to 'refuse'."
};
-static void warn_unconfigured_deny_delete_current(void)
+static void refuse_unconfigured_deny_delete_current(void)
{
int i;
for (i = 0;
- i < ARRAY_SIZE(warn_unconfigured_deny_delete_current_msg);
+ i < ARRAY_SIZE(refuse_unconfigured_deny_delete_current_msg);
i++)
- warning(warn_unconfigured_deny_delete_current_msg[i]);
+ error(refuse_unconfigured_deny_delete_current_msg[i]);
}
static const char *update(struct command *cmd)
@@ -319,12 +313,12 @@ static const char *update(struct command *cmd)
case DENY_IGNORE:
break;
case DENY_WARN:
- case DENY_UNCONFIGURED:
- if (deny_delete_current == DENY_UNCONFIGURED)
- warn_unconfigured_deny_delete_current();
warning("deleting the current branch");
break;
case DENY_REFUSE:
+ case DENY_UNCONFIGURED:
+ if (deny_delete_current == DENY_UNCONFIGURED)
+ refuse_unconfigured_deny_delete_current();
error("refusing to delete the current branch: %s", name);
return "deletion of the current branch prohibited";
}
diff --git a/t/t5400-send-pack.sh b/t/t5400-send-pack.sh
index 7b21f5f..6ef1f03 100755
--- a/t/t5400-send-pack.sh
+++ b/t/t5400-send-pack.sh
@@ -196,7 +196,7 @@ test_expect_success 'pushing wildcard refspecs respects forcing' '
test_expect_success 'deny pushing to delete current branch' '
(
rewound_push_setup &&
- git send-pack ../parent/.git :refs/heads/master 2>errs
+ test_must_fail git send-pack ../parent/.git :refs/heads/master 2>errs
)
'
--
1.6.2.rc0.28.g2593d
next prev parent reply other threads:[~2009-02-09 9:11 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-07 15:27 Deleting the "current" branch in remote bare repositories Jan Krüger
2009-02-07 22:05 ` Felipe Contreras
2009-02-08 0:18 ` Jan Krüger
2009-02-08 8:44 ` Jeff King
2009-02-08 9:42 ` Junio C Hamano
2009-02-08 11:18 ` Jeff King
2009-02-08 19:05 ` Junio C Hamano
2009-02-09 9:09 ` [PATCH 0/6] Deleting the "current" branch in a remote repository Junio C Hamano
2009-02-09 9:09 ` [PATCH 1/6] builtin-receive-pack.c: do not initialize statics to 0 Junio C Hamano
2009-02-09 9:09 ` [PATCH 2/6] t5400: allow individual tests to fail Junio C Hamano
2009-02-09 9:09 ` [PATCH 3/6] receive-pack: receive.denyDeleteCurrent Junio C Hamano
2009-02-09 9:09 ` [PATCH 4/6] remote prune: warn dangling symrefs Junio C Hamano
2009-02-09 9:09 ` [PATCH 5/6] Warn use of "origin" when remotes/origin/HEAD is dangling Junio C Hamano
2009-02-09 9:09 ` Junio C Hamano [this message]
2009-02-09 19:15 ` [PATCH 4/6] remote prune: warn dangling symrefs Jeff King
2009-02-11 17:30 ` Junio C Hamano
2009-02-11 18:35 ` Jeff King
2009-02-11 18:42 ` Jeff King
2009-02-09 18:53 ` [PATCH 3/6] receive-pack: receive.denyDeleteCurrent Jeff King
2009-02-09 19:22 ` Jeff King
2009-02-09 21:38 ` Junio C Hamano
2009-02-10 12:07 ` Jeff King
2009-02-10 15:15 ` Junio C Hamano
2009-02-09 18:46 ` [PATCH 2/6] t5400: allow individual tests to fail Jeff King
2009-02-09 19:08 ` Junio C Hamano
2009-02-09 21:39 ` Junio C Hamano
2009-02-10 12:01 ` Jeff King
2009-02-09 18:28 ` Deleting the "current" branch in remote bare repositories Jeff King
2009-02-09 18:36 ` Jeff King
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1234170565-6740-7-git-send-email-gitster@pobox.com \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).