You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds a gitlens.graph.searchAutocompleteOnFocus setting to control whether search autocomplete suggestions appear automatically when focusing or clicking the search input in the Commit Graph (#5287)
Adds the ability to copy working changes to other opened worktrees from the Commit Graph (#5288)
Adds the ability to discard working changes from the working changes (WIP) file list in the Commit Graph and Inspect view — per-file or in bulk, with safe partial discard for files that have both staged and unstaged changes (a first discard drops only the unstaged changes, preserving the staged portion) and a bulk action that switches to discarding staged changes when no unstaged changes remain (#5296)
Adds an Add Co-authors button to the Commit Graph's working changes (WIP) commit box that opens the contributor picker and appends the selected co-authors to the commit message (#5297)
Adds a Copy Changes (Patch) button to the working changes (WIP) file list in the Commit Graph and Inspect view that copies a unified diff of the uncommitted changes to the clipboard — copies staged changes by default and unstaged changes on Alt-click when both are present, otherwise copies all changes (#5302)
Adds the ability to jump from the working changes (WIP) to its commit in the Commit Graph — a down-arrow in the working changes header selects the branch tip commit the changes are based on, complementing the existing action to jump from a commit to its working changes (#5303)
Adds an Undo Commit row adornment to the Commit Graph — surfaces an inline undo button on a HEAD commit row when hovered, focused, or selected, alongside the existing context-menu action
Adds support for undoing the HEAD commit of any worktree from the Commit Graph — the adornment and context-menu action now target the correct working tree for secondary worktrees, not just the active one (a distinct Undo Commit on Worktree label makes the target clear) (#5311)
Adds responsive compaction to the Commit Graph's side bar icon rail in short layouts — hides the count badges and tightens spacing, then folds the overflowing icons into a "…" menu (with their labels and counts) as the rail runs out of room, restoring them as it grows (#5313)
Adds a keyboard shortcuts reference to the Commit Graph — opened from a new keyboard icon in the graph's sidebar rail — listing all supported navigation, search, open, and commit shortcuts with platform-aware key labels (#5312)
Adds back/forward navigation to the Commit Graph details panel and Inspect view — Back/Forward buttons in the commit and working changes (WIP) detail headers step back through previously-viewed commits, stashes, and working changes, best-effort re-selecting the row in the Commit Graph (#5316)
Adds the ability to push up to (and including) a specific commit from the Commit Graph — commits ahead of the branch's upstream show an unpushed indicator that doubles as a one-click Push to Commit action, also available in the commit's context menu (#5314)
Adds an Open Worktree File action to the commit file menu in the Commit Graph details and Inspect view that opens a committed file from the worktree whose branch contains the commit — useful in multi-worktree repos where the file's working copy lives outside the currently-scoped worktree, with a worktree picker when more than one worktree applies (#5317)
Adds a working changes bar to the Commit Graph — a horizontal bar above the graph with a pill for each worktree that has uncommitted changes or unpushed commits (primary and secondary worktrees alike), showing its branch and agent status, with an up-arrow (↑) marking unpushed work and a hover breakdown of changed files and commits to push; clicking a pill reveals and selects that worktree's working changes in the graph and opens its details (#5301)
Adds heat decay, read/edit color blending, and a live pulse to the experimental Agent Activity Treemap — touched files now fade over a configurable window after each tool call instead of switching on and off, reads and edits blend as cyan/amber weighted by recency, and a soft pulse marks the file an agent is reading or editing right now
Adds a gitlens.graph.experimental.visualizations.activityDecay setting (30 seconds to 30 minutes, default 5 minutes) with a matching decay-window picker in the treemap toolbar
Rolls sub-agent file activity up to the parent session so the heatmap reflects what a session's sub-agents are reading and editing
Adds the ability to squash multiple commits from the Commit Graph — select two or more contiguous commits on the current branch, right-click, and choose Squash Commits to combine them into one, then review and edit the combined commit message (or keep only the oldest commit's message) (#5161)
Adds the ability to drop multiple commits from the Commit Graph — select commits on the current branch, right-click, and choose Drop Commits to remove them (#5161)
Adds the ability to reword a commit's message from the Commit Graph — right-click a commit on the current branch and choose Reword Commit (#5161)
Adds a Modify Commits (Interactive Rebase) action to the Commit Graph that opens the interactive rebase editor scoped from the selected commit(s) for squashing, rewording, reordering, dropping, and editing (#5161)
Adds a Publish Branch action to the Commit Graph header that appears when the current branch has no upstream — publishes (pushes and sets the upstream of) the current branch in one click, sitting just left of Fetch and collapsing to its icon when the header is too narrow (#5327)
Adds the ability to multi-select files in the Commit Graph details and Inspect view to act on several at once — Ctrl/Cmd+click to toggle, Shift+click for a range, and Ctrl/Cmd+A to select all — with batch actions from the context menu and toolbar: open files, open selected changes (multi-diff), open on remote, copy paths and relative paths, and (for working changes) stage, unstage, stash, and discard (#5328)
Adds a gitlens.advanced.repositorySearch.enabled setting to control whether GitLens scans workspace folders to discover Git repositories — when disabled, GitLens relies solely on VS Code's built-in Git/SCM integration to report when repositories are opened or closed
Adds the ability to stash only the staged changes from the working changes (WIP) file list in the Commit Graph and Inspect view — when both staged and unstaged changes are present, the Stash action stashes only the staged changes by default (Alt-click to stash all)
Changed
Improves graph selection reliability and performance
Honors VS Code's scm.defaultViewSortKey setting when sorting working changes (WIP) file lists in the Commit Graph, while keeping unresolved conflicts at the top (#5289)
Changes the Add as Co-author action in the Commit Graph to append the co-author to the graph's working changes (WIP) commit message box instead of writing to the Source Control input and switching to the Source Control view (#5294)
Improves Commit Graph update performance by skipping redundant re-renders when content is structurally unchanged
Improves performance in large workspaces by only watching a repository's working tree while its node is expanded in the views
Improves resilience of GitHub requests by retrying transient gateway and network failures (502, 503, 504) with exponential backoff, restricted to idempotent reads
Improves commit feedback and error handling when committing working changes (WIP) in the Commit Graph — locks inputs with a spinner during commits and surfaces classified, actionable errors for signing, pre-commit hook, and conflict failures (#5290)
Improves how partially staged (mixed) files are counted and displayed in the Commit Graph file tree badges (#5291)
Improves resilience when VS Code updates GitLens in the background — surfaces an actionable Reload Window prompt when a lazily-loaded feature can no longer be found, instead of a cryptic error
Changes the Apply Stash command labels to Apply / Pop Stash across the command palette, view context menus, Commit Graph, and tooltips to clarify that both apply and pop are available
Fixed
Fixes opening the Commit Graph in multi root workspace to the correct repo (#5276)
Fixes commit signing not being detected as enabled when only VS Code's git.enableCommitSigning setting is on (without commit.gpgsign set in Git config) — GitLens-driven commits (e.g. the Commit Composer) now sign in this case
Fixes the gitlens.advanced.similarityThreshold setting being ignored when computing Git status — rename detection in status, working changes (WIP), and stash file lists used Git's default threshold (50%) instead of the configured value
Fixes the gitlens.advanced.similarityThreshold setting being ignored when listing changed files for a diff — rename detection used Git's default threshold (50%) instead of the configured value
Fixes force push from the Push command always using --force-with-lease (and --force-if-includes) and ignoring VS Code's git.useForcePushWithLease and git.useForcePushIfIncludes settings — the confirmation could offer a plain --force while GitLens still pushed with lease; it now honors the configured preference
Fixes Stash Unstaged Changes also stashing staged changes when an untracked file is involved — including untracked files no longer drops the --keep-index flag, so staged changes are correctly kept intact (#5281)
Fixes push from the Commit Graph silently pushing to a wrong remote branch when the local branch tracks a differently-named upstream (e.g., feature/foo tracking origin/main) — now correctly pushes to the configured upstream branch instead of creating a new remote branch (#5304)
Fixes the working changes (WIP) Generate Commit Message in the Commit Graph losing its result when the selection changes while a message is generating — the generation now continues and the message lands in the originating worktree's commit input (or its saved draft if you've navigated away) (#5295)
Fixes the commit details metadata bar in the Commit Graph and Inspect view not surfacing a reachable tag when a commit is contained only in tags (and not any branch) — now shows the most relevant tag with a tag icon and color, matching how branches are shown (#5293)
Fixes incorrect GitLab avatars being shown when multiple GitLab users share the same name (#2205)
Fixes the repository picker being incorrectly skipped when an action targets a repository that isn't surfaced in VS Code — for example, using the stash action on a secondary worktree's working changes when that worktree isn't open in VS Code (#5292)
Fixes potential runtime errors when formatting invalid or unparseable dates (#4922)
Fixes an issue where unchecking Interactive Rebase Editor in the GitLens settings UI would not persist — the checkbox would revert to checked after changing another setting or reopening the settings UI (#5277)
Fixes an issue where the GitKraken CLI was not auto-installed on hosts where MCP auto-registration is unsupported (older VS Code, Windsurf, JetBrains, Trae, Kiro, Zed, etc.), preventing Claude hooks installation and agent dispatch in Start Work and Start PR Review flows (#5280)
Fixes the Commit Graph intermittently flashing a "No commits" message during concurrent Git operations
Fixes styling in rendered markdown (commit message hovers, autolinks, and details) being stripped in webviews by the stricter content-security policy introduced in v18.0.0
Fixes the gitlens.advanced.skipOnboarding setting not being honored, so onboarding surfaces could still appear even when it was enabled
Fixes the Commit Graph details panel showing stale working changes after the view regains visibility (#5322)