From: Jialong Wang Date: Wed, 18 Mar 2026 20:35:47 GMT Subject: [PATCH] t1900: cover linked worktrees and separate git dirs Message-ID: <20260318203547.39972-1-jerrywang183@yahoo.com> In-Reply-To: <20260318203547.39972-1-jerrywang183.ref@yahoo.com> Add repo-info coverage for repositories accessed through a linked\nworktree and through a worktree created with --separate-git-dir.\n\nThese layouts are already supported by the current implementation, but\nare not exercised by t1900-repo-info.sh yet. Cover both the lines and\nnul output formats for layout.bare and layout.shallow in these cases. Signed-off-by: Jialong Wang --- t/t1900-repo-info.sh | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/t/t1900-repo-info.sh b/t/t1900-repo-info.sh index a9eb07abe8..f85ed232c2 100755 --- a/t/t1900-repo-info.sh +++ b/t/t1900-repo-info.sh @@ -69,6 +69,45 @@ test_repo_info 'object.format = sha1 is retrieved correctly' \ test_repo_info 'object.format = sha256 is retrieved correctly' \ 'git init --object-format=sha256' 'sha256' 'object.format' 'sha256' +test_expect_success 'setup linked worktree' ' + git init main && + git -C main worktree add ../linked +' + +test_expect_success 'linked worktree layout values are retrieved correctly in lines format' ' + cat >expect <<-\EOF && + layout.bare=false + layout.shallow=false + EOF + git -C linked repo info layout.bare layout.shallow >actual && + test_cmp expect actual +' + +test_expect_success 'linked worktree layout values are retrieved correctly in nul format' ' + printf "layout.bare\nfalse\0layout.shallow\nfalse\0" >expect && + git -C linked repo info --format=nul layout.bare layout.shallow >actual && + test_cmp_bin expect actual +' + +test_expect_success 'setup repository created with --separate-git-dir' ' + git init --separate-git-dir=separate.git separate-worktree +' + +test_expect_success 'separate-git-dir layout values are retrieved correctly in lines format' ' + cat >expect <<-\EOF && + layout.bare=false + layout.shallow=false + EOF + git -C separate-worktree repo info layout.bare layout.shallow >actual && + test_cmp expect actual +' + +test_expect_success 'separate-git-dir layout values are retrieved correctly in nul format' ' + printf "layout.bare\nfalse\0layout.shallow\nfalse\0" >expect && + git -C separate-worktree repo info --format=nul layout.bare layout.shallow >actual && + test_cmp_bin expect actual +' + test_expect_success 'values returned in order requested' ' cat >expect <<-\EOF && layout.bare=false -- 2.51.0