[Desktop] Worktree diff panel is pinned to the base branch chosen at creation; no way to repoint it

Status Closed — duplicate
Maintainer reply None cached
Activity 1 comment · opened Jul 20, 2026 · closed Aug 25, 2026

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.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗