Browse Source

t5516: test update of local refs on push

The first test (updating local refs) should succeed without the
prior commit, but the second one (not updating on error) used to
fail before the prior commit was written.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
maint
Jeff King 17 years ago committed by Shawn O. Pearce
parent
commit
09fba7a59d
  1. 28
      t/t5516-fetch-push.sh

28
t/t5516-fetch-push.sh

@ -254,4 +254,32 @@ test_expect_success 'push with dry-run' ' @@ -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

Loading…
Cancel
Save