Merge branch 'op/worktree-is-main-bare-fix'

Going into a secondary worktree and asking "is the main worktree
bare?" did not work correctly when per-worktree configuration
option was in use, which has been corrected.

* op/worktree-is-main-bare-fix:
  worktree: detect from secondary worktree if main worktree is bare
This commit is contained in:
Junio C Hamano
2025-02-14 17:53:48 -08:00
2 changed files with 46 additions and 9 deletions

View File

@ -410,6 +410,20 @@ test_expect_success 'bare main worktree has HEAD at branch deleted by secondary
git -C secondary branch -D main
'
test_expect_success 'secondary worktrees recognize core.bare=true in main config.worktree' '
test_when_finished "rm -rf bare_repo non_bare_repo secondary_worktree" &&
git init -b main non_bare_repo &&
test_commit -C non_bare_repo x &&
git clone --bare non_bare_repo bare_repo &&
git -C bare_repo config extensions.worktreeConfig true &&
git -C bare_repo config unset core.bare &&
git -C bare_repo config --worktree core.bare true &&
git -C bare_repo worktree add ../secondary_worktree &&
git -C secondary_worktree checkout main
'
test_expect_success 'git branch --list -v with --abbrev' '
test_when_finished "git branch -D t" &&
git branch t &&