The test of failing `git rm -f` removes the write permissions on the test directory, but fails to restore them if the test fails. This means that the test temporary directory cannot be cleaned up, which means that subsequent attempts to run the test fail mysteriously. Instead, do the cleanup in a `test_must_fail` block so that it can't be skipped. Signed-off-by: Michael Haggerty <mhagger@xxxxxxxxxxxx> --- t/t3600-rm.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/t/t3600-rm.sh b/t/t3600-rm.sh index 5f9913ba33..4a35c378c8 100755 --- a/t/t3600-rm.sh +++ b/t/t3600-rm.sh @@ -98,8 +98,8 @@ embedded'" test_expect_success SANITY 'Test that "git rm -f" fails if its rm fails' ' chmod a-w . && - test_must_fail git rm -f baz && - chmod 775 . + test_when_finished "chmod 775 ." && + test_must_fail git rm -f baz ' test_expect_success \ -- 2.11.0