[Desktop] Worktree diff panel is pinned to the base branch chosen at creation; no way to repoint it
What's wrong
When you create a worktree in the Desktop app, the Code diff panel diffs your branch against whatever base branch was selected in Desktop at worktree-creation time (e.g. main), and there's no way to change that base afterward. For repos that use a baseline-commit model — where large vendored trees are committed on the working branch and a separate base/<branch> ref marks the real diff origin — this makes the panel show the entire vendored tree as an addition (in my case ~9,300 files / +1.2M lines) even though the actual working change is two files.
Setup
A workspace repo vendors other projects' working trees as tracked files. A tool commits those trees as "baseline" commits on the current branch and advances a local base/<branch> ref to point at each checkpoint. Diff views are meant to be computed against base/<branch>, not against the base branch picked at worktree-creation time.
git diff <selected-base>...HEAD→ 9,371 files (all the vendored baseline content)git diff base/<branch>...HEAD→ 0 files (correct: nothing changed since checkpoint)
Other diff tools that read a configurable base ref show the clean, correct diff. The Desktop panel doesn't — it pins the base to the branch chosen when the worktree was created, so it shows everything.
Request
Allow the diff panel's base to be reconfigured after worktree creation — e.g. a per-repo/per-worktree setting, or honoring a conventional local ref (base/<branch>) when present — instead of being fixed to the base branch selected at creation time.
Expected: diff panel shows only working-tree changes relative to a base I can change.
Actual: panel diffs against the branch selected at worktree-creation time, with no way to repoint it, showing the full baseline tree.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗