diff options
author | Denton Liu <liu.denton@gmail.com> | 2020-01-06 23:53:03 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2020-01-27 12:56:02 -0800 |
commit | 62e80fcb480d388777a9d6d96d977e02c3e7dd36 (patch) | |
tree | f0cf7923d069cbe2c1183e803b43fd7ad4e0247a | |
parent | t2018: teach do_checkout() to accept `!` arg (diff) | |
download | tgif-62e80fcb480d388777a9d6d96d977e02c3e7dd36.tar.xz |
t2018: don't lose return code of git commands
Fix invocations of git commands so their exit codes are not lost
within non-assignment command substitutions.
Signed-off-by: Denton Liu <liu.denton@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | t/t2018-checkout-branch.sh | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/t/t2018-checkout-branch.sh b/t/t2018-checkout-branch.sh index 687ab6713c..caf43571b1 100755 --- a/t/t2018-checkout-branch.sh +++ b/t/t2018-checkout-branch.sh @@ -41,8 +41,12 @@ do_checkout () { test_must_fail git checkout $opts $exp_branch $exp_sha else git checkout $opts $exp_branch $exp_sha && - test $exp_ref = $(git rev-parse --symbolic-full-name HEAD) && - test $exp_sha = $(git rev-parse --verify HEAD) + echo "$exp_ref" >ref.expect && + git rev-parse --symbolic-full-name HEAD >ref.actual && + test_cmp ref.expect ref.actual && + echo "$exp_sha" >sha.expect && + git rev-parse --verify HEAD >sha.actual && + test_cmp sha.expect sha.actual fi } @@ -162,7 +166,8 @@ test_expect_success 'checkout -B to a merge base' ' ' test_expect_success 'checkout -B to an existing branch from detached HEAD resets branch to HEAD' ' - git checkout $(git rev-parse --verify HEAD) && + head=$(git rev-parse --verify HEAD) && + git checkout "$head" && do_checkout branch2 "" -B ' |