This test employs a for-loop inside a subshell and correctly aborts the loop and fails the test overall (via "exit 1") if any iteration of the for-loop fails. Otherwise, it exits the subshell with an explicit "exit 0", presumably to indicate that all iterations of the for-loop succeeded. The &&-chain is (perhaps deliberately) broken between the for-loop and the "exit 0". An upcoming change will teach --chain-lint to detect &&-chain breakage inside subshells, thus the missing &&-chain link will run afoul of --chain-lint. Rather than fixing the &&-chain breakage, instead just drop the unnecessary "exit 0". Signed-off-by: Eric Sunshine <sunshine@xxxxxxxxxxxxxx> --- t/t7201-co.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/t/t7201-co.sh b/t/t7201-co.sh index ab9da61da3..8d8a63a24b 100755 --- a/t/t7201-co.sh +++ b/t/t7201-co.sh @@ -673,7 +673,6 @@ test_expect_success 'custom merge driver with checkout -m' ' do grep $t arm || exit 1 done - exit 0 ) && mv arm expect && -- 2.18.0.419.gfe4b301394