@@ -40,6 +40,8 @@ test_expect_success "git-push --atomic ($PROTOCOL)" '
-e "/^To / { p; }" \
-e "/^ ! / { p; }" \
<out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
To <URL/of/upstream.git>
! [rejected] main -> main (non-fast-forward)
@@ -67,6 +69,8 @@ test_expect_success "non-fast-forward git-push ($PROTOCOL)" '
$B:refs/heads/next \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/next
@@ -42,6 +42,8 @@ test_expect_success "git-push --atomic ($PROTOCOL/porcelain)" '
-e "/^To / { p; }" \
-e "/^! / { p; }" \
<out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
To <URL/of/upstream.git>
! refs/heads/main:refs/heads/main [rejected] (non-fast-forward)
@@ -69,6 +71,8 @@ test_expect_success "non-fast-forward git-push ($PROTOCOL/porcelain)" '
$B:refs/heads/next \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/next
@@ -14,6 +14,8 @@ test_expect_success "git-push is declined ($PROTOCOL)" '
HEAD:refs/heads/next \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
To <URL/of/upstream.git>
! [remote rejected] <COMMIT-B> -> main (pre-receive hook declined)
@@ -14,6 +14,8 @@ test_expect_success "git-push is declined ($PROTOCOL/porcelain)" '
HEAD:refs/heads/next \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
To <URL/of/upstream.git>
! <COMMIT-B>:refs/heads/main [remote rejected] (pre-receive hook declined)
@@ -7,6 +7,8 @@ test_expect_success "proc-receive: no hook, fail to push special ref ($PROTOCOL)
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next
@@ -43,6 +45,8 @@ test_expect_success "proc-receive: no hook, all failed for atomic push ($PROTOCO
HEAD:next \
HEAD:refs/for/main/topic >out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@@ -7,6 +7,8 @@ test_expect_success "proc-receive: no hook, fail to push special ref ($PROTOCOL/
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next
@@ -44,6 +46,8 @@ test_expect_success "proc-receive: no hook, all failed for atomic push ($PROTOCO
HEAD:next \
HEAD:refs/for/main/topic >out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@@ -13,6 +13,8 @@ test_expect_success "proc-receive: bad protocol (unknown version, $PROTOCOL)" '
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
# Check status report for git-push
sed -n \
@@ -67,6 +69,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-read-version, $PROTO
test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-version option" out &&
grep "remote: error: fail to negotiate version with proc-receive hook" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -101,6 +105,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-write-version, $PROT
test_cmp expect actual &&
grep "remote: fatal: die with the --die-write-version option" out &&
grep "remote: error: fail to negotiate version with proc-receive hook" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -134,6 +140,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-read-commands, $PROT
EOF
test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-commands option" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -169,6 +177,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-read-push-options, $
EOF
test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-push-options option" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -202,6 +212,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-write-report, $PROTO
EOF
test_cmp expect actual &&
grep "remote: fatal: die with the --die-write-report option" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -226,6 +238,8 @@ test_expect_success "proc-receive: bad protocol (no report, $PROTOCOL)" '
HEAD:refs/heads/next \
HEAD:refs/for/main/topic >out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next
@@ -272,6 +286,8 @@ test_expect_success "proc-receive: bad protocol (no ref, $PROTOCOL)" '
HEAD:refs/for/main/topic\
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -308,6 +324,8 @@ test_expect_success "proc-receive: bad protocol (unknown status, $PROTOCOL)" '
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -13,6 +13,8 @@ test_expect_success "proc-receive: bad protocol (unknown version, $PROTOCOL/porc
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
# Check status report for git-push
sed -n \
@@ -67,6 +69,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-read-version, $PROTO
test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-version option" out &&
grep "remote: error: fail to negotiate version with proc-receive hook" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -101,6 +105,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-write-version, $PROT
test_cmp expect actual &&
grep "remote: fatal: die with the --die-write-version option" out &&
grep "remote: error: fail to negotiate version with proc-receive hook" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -134,6 +140,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-read-commands, $PROT
EOF
test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-commands option" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -169,6 +177,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-read-push-options, $
EOF
test_cmp expect actual &&
grep "remote: fatal: die with the --die-read-push-options option" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -202,6 +212,8 @@ test_expect_success "proc-receive: bad protocol (hook --die-write-report, $PROTO
EOF
test_cmp expect actual &&
grep "remote: fatal: die with the --die-write-report option" out &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
git -C "$upstream" show-ref >out &&
make_user_friendly_and_stable_output <out >actual &&
@@ -226,6 +238,8 @@ test_expect_success "proc-receive: bad protocol (no report, $PROTOCOL/porcelain)
HEAD:refs/heads/next \
HEAD:refs/for/main/topic >out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/heads/next
@@ -272,6 +286,8 @@ test_expect_success "proc-receive: bad protocol (no ref, $PROTOCOL/porcelain)" '
HEAD:refs/for/main/topic\
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -309,6 +325,8 @@ test_expect_success "proc-receive: bad protocol (unknown status, $PROTOCOL/porce
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -14,6 +14,8 @@ test_expect_success "proc-receive: fail to update (ng, no message, $PROTOCOL)" '
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -48,6 +50,8 @@ test_expect_success "proc-receive: fail to update (ng, with message, $PROTOCOL)"
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -14,6 +14,8 @@ test_expect_success "proc-receive: fail to update (ng, no message, $PROTOCOL/por
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -49,6 +51,8 @@ test_expect_success "proc-receive: fail to update (ng, with message, $PROTOCOL/p
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -15,6 +15,8 @@ test_expect_success "proc-receive: report unexpected ref ($PROTOCOL)" '
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@@ -15,6 +15,8 @@ test_expect_success "proc-receive: report unexpected ref ($PROTOCOL/porcelain)"
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@@ -14,6 +14,8 @@ test_expect_success "proc-receive: report unknown reference ($PROTOCOL)" '
HEAD:refs/for/a/b/c/my/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/a/b/c/my/topic
@@ -14,6 +14,8 @@ test_expect_success "proc-receive: report unknown reference ($PROTOCOL/porcelain
HEAD:refs/for/a/b/c/my/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/a/b/c/my/topic
@@ -18,6 +18,8 @@ test_expect_success "proc-receive: not support push options ($PROTOCOL)" '
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
test_i18ngrep "fatal: the receiving end does not support push options" \
actual &&
git -C "$upstream" show-ref >out &&
@@ -19,6 +19,8 @@ test_expect_success "proc-receive: not support push options ($PROTOCOL/porcelain
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
test_i18ngrep "fatal: the receiving end does not support push options" \
actual &&
git -C "$upstream" show-ref >out &&
@@ -15,6 +15,8 @@ test_expect_success "proc-receive: report option without matching ok ($PROTOCOL)
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -15,6 +15,8 @@ test_expect_success "proc-receive: report option without matching ok ($PROTOCOL/
HEAD:refs/for/main/topic \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <ZERO-OID> <COMMIT-A> refs/for/main/topic
@@ -26,6 +26,8 @@ test_expect_success "proc-receive: report update of mixed refs ($PROTOCOL)" '
HEAD:refs/for/next/topic3 \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main
@@ -26,6 +26,8 @@ test_expect_success "proc-receive: report update of mixed refs ($PROTOCOL/porcel
HEAD:refs/for/next/topic3 \
>out 2>&1 &&
make_user_friendly_and_stable_output <out >actual &&
+ # Prevent accidential changes by the internal "receive-pack" process.
+ rm out &&
cat >expect <<-EOF &&
remote: # pre-receive hook
remote: pre-receive< <COMMIT-A> <COMMIT-B> refs/heads/main