From: Jiang Xin <zhiyou.jx@xxxxxxxxxxxxxxx> In test case "shared=all", the working directory is permanently changed to the "sub" directory. This leads to a strange behavior that the temporary repositories created by subsequent test cases are all in this "sub" directory, such as "sub/new", "sub/child.git". If we bypass this test case, all subsequent test cases will have different working directory. Besides, all subsequent test cases assuming they are in the "sub" directory do not run any destructive operations in their parent directory (".."), and will not make damage out side of $TRASH_DIRECTORY. So it is a safe change for us to run the test case "shared=all" in current repository instead of creating and changing to "sub". For the next test case, we no longer run it in the "sub" repository which is initialized from an empty template, we should not assume the path ".git/info" is missing. So add option "-p" to mkdir. Helped-by: Junio C Hamano <gitster@xxxxxxxxx> Signed-off-by: Jiang Xin <zhiyou.jx@xxxxxxxxxxxxxxx> --- t/t1301-shared-repo.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/t/t1301-shared-repo.sh b/t/t1301-shared-repo.sh index 1225abbb6d..fd10c139f5 100755 --- a/t/t1301-shared-repo.sh +++ b/t/t1301-shared-repo.sh @@ -46,8 +46,6 @@ do done test_expect_success 'shared=all' ' - mkdir sub && - cd sub && git init --template= --shared=all && test 2 = $(git config core.sharedrepository) ' @@ -57,7 +55,7 @@ test_expect_success POSIXPERM 'update-server-info honors core.sharedRepository' git add a1 && test_tick && git commit -m a1 && - mkdir .git/info && + mkdir -p .git/info && umask 0277 && git update-server-info && actual="$(ls -l .git/info/refs)" && -- 2.39.0.rc0