transport-helper: fix remote helper namespace regression
Commit 664059f
(transport-helper: update remote helper namespace)
updates the namespace when the push succeeds or not; we should do it
only when it succeeded.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
d6ae7b2d36
commit
126aac5cf3
@ -97,7 +97,12 @@ do
|
|||||||
while read ref a b
|
while read ref a b
|
||||||
do
|
do
|
||||||
test $a == $b && continue
|
test $a == $b && continue
|
||||||
echo "ok $ref"
|
if test -z "$GIT_REMOTE_TESTGIT_PUSH_ERROR"
|
||||||
|
then
|
||||||
|
echo "ok $ref"
|
||||||
|
else
|
||||||
|
echo "error $ref $GIT_REMOTE_TESTGIT_PUSH_ERROR"
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
echo
|
echo
|
||||||
|
@ -167,6 +167,20 @@ test_expect_success 'push update refs' '
|
|||||||
)
|
)
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'push update refs failure' '
|
||||||
|
(cd local &&
|
||||||
|
git checkout update &&
|
||||||
|
echo "update fail" >>file &&
|
||||||
|
git commit -a -m "update fail" &&
|
||||||
|
git rev-parse --verify testgit/origin/heads/update >expect &&
|
||||||
|
GIT_REMOTE_TESTGIT_PUSH_ERROR="non-fast forward" &&
|
||||||
|
export GIT_REMOTE_TESTGIT_PUSH_ERROR &&
|
||||||
|
test_expect_code 1 git push origin update &&
|
||||||
|
git rev-parse --verify testgit/origin/heads/update >actual &&
|
||||||
|
test_cmp expect actual
|
||||||
|
)
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success 'proper failure checks for fetching' '
|
test_expect_success 'proper failure checks for fetching' '
|
||||||
(GIT_REMOTE_TESTGIT_FAILURE=1 &&
|
(GIT_REMOTE_TESTGIT_FAILURE=1 &&
|
||||||
export GIT_REMOTE_TESTGIT_FAILURE &&
|
export GIT_REMOTE_TESTGIT_FAILURE &&
|
||||||
|
@ -701,7 +701,7 @@ static int push_update_ref_status(struct strbuf *buf,
|
|||||||
|
|
||||||
(*ref)->status = status;
|
(*ref)->status = status;
|
||||||
(*ref)->remote_status = msg;
|
(*ref)->remote_status = msg;
|
||||||
return 0;
|
return !(status == REF_STATUS_OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void push_update_refs_status(struct helper_data *data,
|
static void push_update_refs_status(struct helper_data *data,
|
||||||
|
Reference in New Issue
Block a user