jesseduffield.lazygit/pkg
Stefan Haller d2d5bdc2bc Identify the current and main worktree by git dir, not by path
`git worktree list` reports the main worktree as the common git dir with
a trailing "/.git" removed, which equals the working tree only when the
git dir sits inside it. In a submodule, a bare repo, or a repo using
core.worktree it doesn't, so comparing the reported path against the
working tree path matches nothing: no worktree is recognized as current
or as main. Most visibly, inside a submodule lazygit claimed we were in
a linked worktree named after the submodule, and offered to remove that
"worktree".

Comparing git dirs identifies a worktree unambiguously, so use that.
A worktree whose directory is gone has no git dir to compare, and there
we still have nothing better than its path.

The submodule tests were asserting the linked-worktree suffix in the
status view; it is gone now, and the repo name still says which
submodule we're in.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-08 11:15:01 +02:00
..
app Move dragged commits in one rebase 2026-07-31 08:37:28 +02:00
cheatsheet Render every key for a binding in the cheatsheet 2026-05-25 15:18:18 +02:00
commands Identify the current and main worktree by git dir, not by path 2026-08-08 11:15:01 +02:00
common Move NewDummyCommon to pkg/common 2025-05-06 09:43:26 +02:00
config Move Github PR cache out of state.yml into a separate file 2026-08-02 19:09:22 +02:00
constants Adapt links 2026-07-31 08:42:51 +02:00
env Support bare worktrees where worktree does not have its own .git file 2023-08-07 22:40:53 +10:00
fakes Modernize all codes 2025-11-15 10:46:23 +01:00
gocui Exclude more commit trailers from auto-wrapping 2026-08-02 19:22:34 +02:00
gui Scroll the selection into view after a filtering mode change 2026-08-05 17:29:20 +02:00
i18n Don't show an unfiltered list as if it were filtered 2026-08-05 17:29:20 +02:00
integration Identify the current and main worktree by git dir, not by path 2026-08-08 11:15:01 +02:00
jsonschema Fold legacy quit-alt1 into the multi-key quit binding 2026-05-25 15:32:47 +02:00
logs Fix Windows linter errors 2026-06-16 16:21:13 +02:00
snake Enable intrange linter, and fix warnings 2025-06-30 18:30:11 +02:00
tasks Give task commands a Terminate method instead of exposing their process 2026-08-04 07:03:27 +02:00
theme Copy gocui files into lazygit repo under pkg/gocui 2026-04-30 14:29:08 +02:00
updates Change direct access to Common.UserConfig to a getter 2024-08-18 10:24:52 +02:00
utils Rework the custom pager config (rename to diff renderer) 2026-07-31 08:42:51 +02:00