path: root/t/
diff options
authorJunio C Hamano <>2009-02-11 10:28:03 (GMT)
committerJunio C Hamano <>2009-07-29 17:15:00 (GMT)
commitacd2a45b83e50c0f33b01ee74df241f1adfdff39 (patch)
tree2dd1dd6c6c0630ebb43b88e1cbd8256ebbd83659 /t/
parent6641575963388b61f408f177d91cdacad25d2e26 (diff)
Refuse updating the current branch in a non-bare repository via push
This makes git-push refuse pushing into a non-bare repository to update the current branch by default. To help people who are used to be able to do this (and later "reset --hard" it in some other way), an error message is issued when this refusal is triggered, instructing how to resurrect the old behaviour. Hosting sites that do not give the users direct access to customize their repositories (e.g., gitorious, github etc.) may further want to explicitly set the configuration variable to "refuse" for their customers' repositories. Signed-off-by: Junio C Hamano <>
Diffstat (limited to 't/')
1 files changed, 2 insertions, 1 deletions
diff --git a/t/ b/t/
index f2d5581..8463332 100755
--- a/t/
+++ b/t/
@@ -32,7 +32,7 @@ test_expect_success setup '
done &&
git update-ref HEAD "$commit" &&
git clone ./. victim &&
- ( cd victim && git log ) &&
+ ( cd victim && git config receive.denyCurrentBranch warn && git log ) &&
git update-ref HEAD "$zero" &&
parent=$zero &&
i=0 &&
@@ -129,6 +129,7 @@ rewound_push_setup() {
cd parent &&
git init &&
echo one >file && git add file && git commit -m one &&
+ git config receive.denyCurrentBranch warn &&
echo two >file && git commit -a -m two
) &&
git clone parent child &&