summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2007-10-31 04:38:04 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-10-31 04:38:04 (GMT)
commit7ae4dd05725e1613375e03f206077959853d6b51 (patch)
tree3f22627155ce51b69fe6a99e3c9340490ec3e98e /t
parent7e9a4645d1a113d4390f5198a4212721cc9bf3dd (diff)
parent09fba7a59d38d1cafaf33eadaf1d409c4113b30c (diff)
downloadgit-7ae4dd05725e1613375e03f206077959853d6b51.zip
git-7ae4dd05725e1613375e03f206077959853d6b51.tar.gz
git-7ae4dd05725e1613375e03f206077959853d6b51.tar.bz2
Merge branch 'jk/send-pack' into HEAD
* jk/send-pack: t5516: test update of local refs on push send-pack: don't update tracking refs on error
Diffstat (limited to 't')
-rwxr-xr-xt/t5516-fetch-push.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/t/t5516-fetch-push.sh b/t/t5516-fetch-push.sh
index 4fbd5b1..86f9b53 100755
--- a/t/t5516-fetch-push.sh
+++ b/t/t5516-fetch-push.sh
@@ -254,4 +254,32 @@ test_expect_success 'push with dry-run' '
check_push_result $old_commit heads/master
'
+test_expect_success 'push updates local refs' '
+
+ rm -rf parent child &&
+ mkdir parent && cd parent && git init &&
+ echo one >foo && git add foo && git commit -m one &&
+ cd .. &&
+ git clone parent child && cd child &&
+ echo two >foo && git commit -a -m two &&
+ git push &&
+ test $(git rev-parse master) = $(git rev-parse remotes/origin/master)
+
+'
+
+test_expect_success 'push does not update local refs on failure' '
+
+ rm -rf parent child &&
+ mkdir parent && cd parent && git init &&
+ echo one >foo && git add foo && git commit -m one &&
+ echo exit 1 >.git/hooks/pre-receive &&
+ chmod +x .git/hooks/pre-receive &&
+ cd .. &&
+ git clone parent child && cd child &&
+ echo two >foo && git commit -a -m two || exit 1
+ git push && exit 1
+ test $(git rev-parse master) != $(git rev-parse remotes/origin/master)
+
+'
+
test_done