March 28th 1 PM ET

GitLens Documentation

GitLens Release Notes

Find out what’s new, what’s fixed, or just take a trip down memory lane remembering those bugs of yesterday.

Check out our Changelog to see linked issues and past changes.

Install Current Version Now

Features marked with a ✨ require a trial or paid plan for use on privately hosted repos
Features marked with a ☁️ require a GitKraken Account, with access level based on your plan, e.g. Free, Pro, etc


Version 14.9

Wednesday, March 6, 2024

The 14.9 release of GitLens brings improved reviewing of branch changes and new Anthropic Claude models along with general fixes and improvements.

Improved reviewing of Branch Changes

Two new commands were added to branches in the Commit Graph and views. The Compare with Common Base enables reviewing changes as if the selected branch were to be merged by comparing the common ancestor (merge base) with the current branch to the selected branch. Use the new Open All Changes with Common Base command to review the changes as if the selected branch were to be merged in the multi-diff editor.

Anthropic Claude Models

We’ve added support for Anthropic’s Claude 3 Opus & Sonnet models for GitLens’ experimental AI features. You can select these models from the GitLens: Switch AI Model command in the Command Palette. You can then use these models with the GitLens: Generate Commit Message (Experimental)... command in the Command Palette or in the Explain (AI) panel of Commit Details and Cloud Patch Details views.

Added

  • Adds support for Anthropic’s Claude 3 Opus & Sonnet models for GitLens’ experimental AI features
  • Adds a Compare with Common Base command to branches in the Commit Graph and views to review the changes if the selected branch were to be merged by comparing the common ancestor (merge base) with the current branch to the selected branch
  • Adds an Open All Changes with Common Base command to branches in the Commit Graph and views to review the changes if the selected branch were to be merged in the multi-diff editor
  • Adds a Stash All Changes command to Source Control repository toolbar (off by default)
  • Adds the repository name as a prefix to worktree name when adding to the current workspace
  • Adds a better message when stashing only untracked files without including untracked files

Changed

  • Re-adds Add to Workspace option when creating a worktree — closes #3160
  • Changes Commit Graph date style to default to the default date style — refs #3153
  • Renames the Compare Ancestry with Working Tree command on branches to Compare Common Base with Working Tree for better clarity
  • Improves File Blame annotations performance and layout accuracy with certain character sets
  • Improves string formatting performance

Fixed

  • Fixes #3146 – Search & Compare fails to remember items after restart
  • Fixes #3152 – Fixes double encoding of redirect URLs during account sign-in which affects certain environments
  • Fixes #3153gitlens.defaultDateStyle not working in Commit Details view
  • Fixes the Open Pull Request Changes & Compare Pull Request commands to scope the changes only to the pull request
  • Fixes broken Compare Common Base with Working Tree (previously Compare Ancestry with Working Tree)
  • Fixes issue when switching to a worktree via branch switch when there are multiple repos in the workspace

Version 14.8

Thursday, February 8, 2024

The 14.8 release of GitLens features several enhancements to make it easier to use worktrees, view diffs and pull-requests, and includes enterprise improvements for Cloud Patches.

Worktree Workflow Improvements ✨

We’ve improved and streamlined the process of creating and opening worktrees. This includes new options for creating a worktree when switching branches as well as skipping prompts for remote creating and just auto-adding them. We’ve also added a command for copying your current working changes to an existing worktree.

VS Code Multi-diff Support

VS Code’s new multi-diff editor is out of experimental, so we’ve enabled it in our commands by default for VS Code 1.86 and above. The multi-diff editor allows you to view changes across multiple files in a single tab, instead of switching between tabs. This makes comparing a set of changes across files much easier.

Cloud Patch Enterprise Storage ☁️

For Enterprise customers, there is now the option to host Cloud Patches on your own dedicated storage for maximum security. Your organization’s admin can configure the self-managed storage at https://gitkraken.dev/settings/security. When creating a Cloud Patch, GitLens will confirm they are being stored on your secure organization storage.

Thank you to our contributors

Shout-out to our awesome contributors for this release!

Added

  • Adds support for Cloud Patches hosted on your own dedicated storage for the highest level of security (requires an Enterprise plan)
  • Improves worktree usage, discoverability, and accessibility
    • Simplifies the create worktree and open worktree flows — reduces number of steps and options presented
    • Adds Create Branch in New Worktree confirmation option when creating branches, e.g. via the GitLens: Git Create Branch… command
    • Adds Create Worktree for Branch, Create Worktree for Local Branch, and Create Worktree for New Local Branch confirmation options when switching branches, e.g. via the GitLens: Git Switch to… command
    • Adds a Copy Working Changes to Worktree… command to the Commit Graph and command palette to copy the current working changes to an existing worktree
    • Avoids prompt to add a (required) remote and instead auto-adds the remote during worktree creation from a pull request
  • Adds ability to open multiple changes in VS Code’s new multi-diff editor, previously experimental and now enabled by default
    • Adds an inline Open All Changes command to commits, stashes, and comparisons in the views
    • Changes Open All Changes & Open All Changes with Working Tree commands to use the new multi-diff editor when enabled
    • Adds Open All Changes, Individually & Open All Changes with Working Tree, Individually commands to provide access to the previous behavior
    • Renames the gitlens.experimental.openChangesInMultiDiffEditor setting to gitlens.views.openChangesInMultiDiffEditor, which is enabled by default, to specify whether to open changes in the multi-diff editor (single tab) or in individual diff editors (multiple tabs)
    • Requires VS Code 1.86 or later, or VS Code 1.85 with multiDiffEditor.experimental.enabled enabled
  • Adds new comparison features to pull requests in GitLens views
    • Adds an Open Pull Request Changes context menu command on pull requests in the Commit Graph and other GitLens views to view pull request changes in a multi-diff editor (single tab)
    • Requires VS Code 1.86 or later, or VS Code 1.85 with multiDiffEditor.experimental.enabled enabled
    • Adds a Compare Pull Request context menu command on pull requests in the Commit Graph and other GitLens views to open a comparison between the head and base of the pull request for easy reviewing
  • Adds an Open in Commit Graph context menu command on pull requests in GitLens view to open the tip commit in the Commit Graph
  • Adds ability to copy changes, commits, stashes, and comparison as a patch to the clipboard
    • Adds a Copy as Patch context menu command on files, commits, stashes, and comparisons in GitLens views
    • Adds a Copy as Patch context menu command on files in the Changes and Staged Changes groups as well as the groups themselves in the Source Control view
    • Adds a Apply Copied Patch command in the command palette to apply a patch from the clipboard
  • Adds an Open All Changes inline button to branch status (upstream) and branch status files in GitLens views
  • Adds an Open Changes submenu to branch status (upstream) and branch status files in GitLens views
  • Adds ability to preserve inline and file annotations while editing, previously experimental and now enabled by default
    • Renames the gitlens.experimental.allowAnnotationsWhenDirty setting to gitlens.fileAnnotations.preserveWhileEditing, which is enabled by default, to specify whether file annotations will be preserved while editing — closes #1988, #3016
    • Use the existing gitlens.advanced.blame.delayAfterEdit setting to control how long to wait (defaults to 5s) before the annotation will update while the file is still dirty, which only applies if the file is under the gitlens.advanced.sizeThresholdAfterEdit setting threshold (defaults to 5000 lines)
  • Adds an Open File Annotation Settings command to the File Annotations submenu in the editor toolbar to open the GitLens Settings editor to the file annotations sections
  • Adds gitlens.blame.fontFamily, gitlens.blame.fontSize, gitlens.blame.fontWeight settings to specify the font (family, size, and weight respectively) of the File Blame annotations — closes #3134
  • Adds Copy Link to Code, Copy Link to File, and Copy Link to File at Revision… commands to the Share submenu in the editor line number (gutter) context menu
  • Adds an alternate flow (pick another file) when using the Open File at Revision… and Open Changes with Revision… commands to open a file that has been renamed and the rename is currently unstaged — closes #3109
  • Adds access to most Git Command Palette commands directly to the command palette
  • Adds Rename Stash… options to stash quick pick menus
  • Adds support for the latest GPT-4 Turbo models

Changed

  • Changes adds avatars to commits in quick pick menus
  • Changes the pull request to be first item in the Commits view, when applicable
  • Changes the branch comparison to be below the branch status in the Commits view to keep top focus on the status over the comparison
  • Renames “Open Worktree for Pull Request via GitLens…” to “Checkout Pull Request in Worktree (GitLens)…”
  • Renames the gitlens.experimental.openChangesInMultiDiffEditor setting to gitlens.views.openChangesInMultiDiffEditor as it is no longer experimental and enabled by default

Fixed

  • Fixes #3115 – Always-on file annotations
  • Fixes ahead/behind diffs on files (root) in the Commits view to correctly show the diff of the range rather than the base to the working tree
  • Fixes missing repository icons in the Repositories view
  • Fixes #3116 – Fix typos in README.md and package.json — thanks to PR #3117 by yutotnh (@yutotnh)

Version 14.7

Wednesday, January 16, 2024

With GitLens 14.7, we’re kicking off 2024 with some bugfixes and some new features for Cloud Patches and Deep Links, and more.

Cloud Patch Collaboration ☁️

You can now add members of your GitKraken organization as collaborators on cloud patches you created or maintain as an admin. To invite a collaborator, click on one of your cloud patches in the Cloud Patches view to open its patch details, and then click on the Invite button. You can then select one or more members of your organization to add as collaborators on the patch. Once selected, you can choose a role for each collaborator, and click Update Patch when done to finish adding collaborators.

Cloud patches you’ve been invited to as a collaborator appear under the Shared with Me category in the Cloud Patches view.

Deep Links to Files and Code

You can now create (and use) deep links to files and code in GitLens. Create links to files using the new Copy Link to File and Copy Link to File at Revision… commands in the Copy As submenu of the editor context menu and in the Share submenu of files in GitLens views.

If you have code selected in an editor tab, you’ll also have the option to link to the selected lines using the new Copy Link to Code command in the Copy As submenu of that tab’s context menu.
Use or share these links to quickly and easily open the referenced file or code in an editor tab.

Thank you to our contributors

Shout-out to our awesome contributors for this release!

Added

  • Adds the ability to share Cloud Patches with specific members of your GitKraken organization
    • You can now share Cloud Patches exclusively with specific members of your organization by selecting Collaborators Only when viewing or creating a Cloud Patch
    • Click the Invite button at the bottom of the Patch Details view to add members of your organization to collaborate and click Update Patch to save your changes
    • Cloud Patch collaborators will see these Patches under the Shared with Me section of the Cloud Patches view
  • Adds support for deep links to files and code
    • Deep link format: https://gitkraken.dev/link/r/{repoId}/f/{filePath}?[url={remoteUrl}|path={repoPath}]&lines={lines}&ref={ref}
    • Adds Copy Link to File, Copy Link to File at Revision…, and Copy Link to Code commands to the Copy As submenu in the editor context menu and to the Share submenu of files in GitLens views
  • Adds the ability to choose multiple stashes to drop in the Git Command Palette‘s stash drop command — closes #3102
  • Adds a new prune subcommand to the Git Command Palette‘s branch command to easily delete local branches with missing upstreams
  • Adds a new Push Stash Snapshot confirmation option to the Git Command Palette‘s stash push command to save a stash without changing the working tree
  • Adds Copy to search results in the Search & Compare view to copy the search query to more easily share or paste queries into the Commit Graph
  • Adds a status bar indicator when blame annotations (inline, statusbar, file annotations, etc) are paused because the file has unsaved changes (dirty), with a tooltip explaining why and how to configure/change the behavior
  • Adds an experimental gitlens.experimental.allowAnnotationsWhenDirty setting to specify whether file annotations are allowed on files with unsaved changes (dirty) — closes #1988, #3016
    • Use the existing gitlens.advanced.blame.delayAfterEdit setting to control how long to wait (defaults to 5s) before the annotation will update while the file is still dirty, which only applies if the file is under the gitlens.advanced.sizeThresholdAfterEdit setting threshold (defaults to 5000 lines)
  • Adds a gitlens.fileAnnotations.dismissOnEscape setting to specify whether pressing the ESC key dismisses the active file annotations — closes #3016

Changed

  • Changes the commit search by file to allow some fuzziness by default — closes #3086
    • For example, if you enter file:readme.txt, we will treat it as file:**/readme.txt, or if you enter file:readme it will be treated as file:*readme*
  • Improves the Switch command to no longer fail when trying to switch to a branch that is linked to another worktree and instead offers to open the worktree
  • Changes branch/tag “tips” that are show on commits in many GitLens views to be truncated to 11 characters by default to avoid stealing to much real estate

Fixed

  • Fixes #3087 – Terminal executed commands fail if the GitLens terminal is closed
  • Fixes #2784 – Git stash push error
  • Fixes #2926 in more cases – “Open File at Revision” has incorrect editor label if revision contains path separator — thanks to PR #3060 by Ian Chamberlain (@ian-h-chamberlain)
  • Fixes #3066 – Editing a large file and switching away to another file without saving causes current line blame to disappear; thanks to PR #3067 by Brandon Cheng (@gluxon)
  • Fixes #3063 – Missing icons in GitLens Settings UI
  • Fixes issue with Switch command not honoring the confirmation setting
  • Fixes worktree delete from offering to delete main worktree (which isn’t possible)
  • Fixes worktree delete on windows when the worktree’s folder is missing

Removed

  • Removes the gitlens.experimental.nativeGit setting as it is now the default experience — closes #3055

Version 14.6

Wednesday, December 13, 2023

GitLens 14.6 marks our last release of 2023 and with it some great enhancements to Cloud Patches, Focus View and much more!

Cloud Patch Sharing Options ☁️

Users can now specify who can access shared Cloud Patches, choosing between anyone with a link or only members of your GitKraken organization with the link.

Coming soon is the ability to explicitly select individuals from your organization as collaborators. Cloud Patches explicitly shared to you, i.e. you are a collaborator, will appear in the Cloud Patches view under “Shared with Me”.

Note: If you have multiple organizations, you can easily switch between them from the GitKraken Account view.

Focus View Timed Snoozing

The focus view now supports timed snoozing of items. Select a duration like 1 hour or 4 hours when snoozing a focus item and then that item will automatically move back when the time expires.

Experimental Multi-diff Editor

You can now open changes in VS Code’s new multi-diff editor. This requires VS Code 1.85 or later with the multiDiffEditor.experimental.enabled and gitlens.experimental.openChangesInMultiDiffEditor settings enabled.

Commands using Multi-diff

  • Open Folder Changes with Revision... and Open Folder Changes with Branch or Tag... commands using the Command Palette as well as the Explorer and Source Control views
  • An inline Open All Changes command for commits, stashes, and comparisons in the views
  • Open All Changes and Open All Changes with Working Tree will use the new multi-diff editor when enabled

Note: Open All Changes, Individually and Open All Changes with Working Tree, Individually commands were added to provide access to the previous behavior.

Thank you to our contributors

Shout-out to our awesome contributor for this release!

Added

  • Adds the ability to specify who can access a Cloud Patch when creating it
    • Anyone with the link — allows anyone with the link and a GitKraken account to access the Cloud Patch
    • Members of my Org with the link — allows only members of your selected GitKraken organization with the link to access the Cloud Patch
    • (Coming soon to GitLens) Ability to explicitly share to specific members from your organization and add them as collaborators on a Cloud Patch
    • Cloud Patches that have been explicitly shared with you, i.e. you are a collaborator, now will appear in the Cloud Patches view under Shared with Me
  • Adds timed snoozing for items in the Focus View — choose from a selection of times when snoozing and the item will automatically move out of the snoozed tab when that time expires
  • Adds the ability to open folder changes — closes #3020
    • Adds Open Folder Changes with Revision… & Open Folder Changes with Branch or Tag… commands to the Command Palette and to the Explorer and Source Control views
    • Requires VS Code 1.85 or later and multiDiffEditor.experimental.enabled to be enabled
  • Adds last modified time of the file when showing blame annotations for uncommitted changes
  • Adds search results to the minimap tooltips on the Commit Graph
  • Adds support for Anthropic’s Claude 2.1 model for GitLens’ experimental AI features
  • Adds a status indicator when the upstream branch is missing in Commits view
  • Adds support for opening renamed/deleted files using the Open File at Revision… & Open File at Revision from… commands by showing a quick pick menu if the requested file doesn’t exist in the selected revision — closes #708 thanks to PR #2825 by Victor Hallberg (@mogelbrod)
  • Adds an Open Changes submenu to comparisons in the Search & Compare view
  • Adds experimental gitlens.experimental.openChangesInMultiDiffEditor setting to specify whether to open multiple changes in VS Code’s experimental multi-diff editor (single tab) or in individual diff editors (multiple tabs)
    • Adds an inline Open All Changes command to commits, stashes, and comparisons in the views
    • Changes Open All Changes & Open All Changes with Working Tree commands to use the new multi-diff editor when enabled
    • Adds Open All Changes, Individually & Open All Changes with Working Tree, Individually commands to provide access to the previous behavior
    • Requires VS Code 1.85 or later and multiDiffEditor.experimental.enabled to be enabled
  • Adds a confirmation prompt when attempting to undo a commit with uncommitted changes
  • Adds a [Show|Hide] Merge Commits toggle to the Contributors view
  • Adds Open in Integrated Terminal command to repositories in the views — closes #3053
  • Adds Open in Terminal & Open in Integrated Terminal commands to the upstream status in the Commits view
  • Adds the ability to choose an active GitKraken organization in the Account View for users with multiple GitKraken organizations.

Changed

  • Improves AI model choice selection for GitLens’ experimental AI features
  • Improves performance when logging is enabled
  • Changes the contextual view title from GL to GitLens

Fixed

  • Fixes #2663 – Debounce bug: file blame isn’t cleared when editing document while text in output window changes
  • Fixes #3050 – Opening revision of a renamed file is broken
  • Fixes #3019 – Commits Views not working
  • Fixes #3026 – Gitlens stopped working in sub-repositories
  • Fixes #2746 – Remove ‘undo commit’ command from gitlens inspect
  • Fixes #2482 – Unresponsive “commits” view and “branches” view update due to git log
  • Fixes duplicate entries in the Search & Compare view when adding a new comparison from outside the view and before the view has loaded
  • Fixes Load more in the File History view when the file has been renamed
  • Fixes broken Open Changed & Close Unchanged Files (gitlens.views.openOnlyChangedFiles) command in the views
  • Fixes issues with Contributors view updating when changing toggles
  • Fixes issues with Open [Previous] Changes with Working File command in comparisons
  • Fixes banner styling on the Commit Graph

Version 14.5

Monday, November 13, 2023

GitLens 14.5 features the all new Cloud Patches preview ☁️, which allows you to easily share changes with other developers by creating a Cloud Patch from your WIP, commit or stash and sharing the generated link with your teammates. Other notable enhancements include opening multiple tabs of Commit Graph & Focus.

Cloud Patches preview ☁️

Cloud Patches aim to shift developer collaboration earlier in the process for faster feedback, cleaner pull requests, and overcoming tricky code challenges as a team. Create Cloud Patches from working changes, commits, stashes, or comparisons — then share the patch URL with others to get feedback and iterate on the changes together. It is currently available across GitLens, GitKraken Client, and GitKraken CLI, with plans to add commenting and more capabilities soon.

Open Multiple Commit Graph & Focus Tabs

Open multiple instances of the Commit Graph, Focus, and Visual File History views, side-by-side, to look at multiple repositories at once or just different visualizations of the same repository.

Thank you to our contributors

Shout-out to all of our awesome contributors for this release!

Added

  • Adds a preview of Cloud Patches, an all-new ☁️ feature — engage in early collaboration before the pull request:
    • Share your work with others by creating a Cloud Patch from Working Changes, Commits, Stashes or Comparisons
    • View Cloud Patches from URLs shared to you and apply them to your working tree or to a new or existing branch
    • Manage your Cloud Patches from the new Cloud Patches view in the GitLens side bar
    • Adds a Share as Cloud Patch… command to the command palette and to the Share submenu in applicable GitLens views
    • Adds a gitlens.cloudPatches.enabled setting to specificy whether to enable Cloud Patches (defaults to true)
  • Adds support to open multiple instances of the Commit Graph, Focus, and Visual File History in the editor area
    • Adds a Split Commit Graph command to the Commit Graph tab context menu
    • Adds a gitlens.graph.allowMultiple setting to specify whether to allow opening multiple instances of the Commit Graph in the editor area
    • Adds a Split Focus command to the Focus tab context menu
    • Adds a gitlens.focus.allowMultiple setting to specify whether to allow opening multiple instances of the Focus in the editor area
    • Adds a Split Visual File History command to the Visual File History tab context menu
    • Adds a gitlens.visualHistory.allowMultiple setting to specify whether to allow opening multiple instances of the Visual File History in the editor area
  • Adds a Generate Commit Message (Experimental) button to the SCM input when supported (currently 1.84.0-insider only)
    • Adds a gitlens.ai.experimental.generateCommitMessage.enabled setting to specify whether to enable GitLens’ experimental, AI-powered, on-demand commit message generation — closes #2652
  • Improves the experience of the Search Commits quick pick menu
    • Adds a stateful authors picker to make it much easier to search for commits by specific authors
    • Adds a file and folder picker to make it much easier to search for commits containing specific files or in specific folders
  • Adds ability to sort repositories in the views and quick pick menus — closes #2836 thanks to PR #2991
    • Adds a gitlens.sortRepositoriesBy setting to specify how repositories are sorted in quick pick menus and views by Aidos Kanapyanov (@aidoskanapyanov)
  • Adds a [Show|Hide] Merge Commits toggle to the Commits_ view — closes #1399 thanks to PR #1540 by Shashank Shastri (@Shashank-Shastri)
  • Adds a Filter Commits by Author… commands to the Commits view and comparisons context menus to filter commits in the Commits view by specific authors
  • Adds ability to publish to a remote branch to a specific commit using the Push to Commit command
  • Adds an Open Comparison on Remote command to comparisons in views
  • Adds a Share > Copy Link to Repository command on branches in the views
  • Adds Share > Copy Link to Branch and Share > Copy Link to Repository commands on the current branch status in the Commits view
  • Adds a Clear Reviewed Files command to comparisons to clear all reviewed files — closes #2987
  • Adds a Collapse command to many view nodes
  • Adds a gitlens.liveshare.enabled setting to specify whether to enable integration with Visual Studio Live Share

Changed

  • Improves accuracy, performance, and memory usage related to parsing diffs, used in Changes hovers, Changes file annotations, etc
  • Improves confirmation messaging in the Git Command Palette
  • Refines merge/rebase messaging when there is nothing to do — refs #1660
  • Improves view messaging while loading/discovering repositories
  • Honors VS Code’s git.useForcePushWithLease and git.useForcePushIfIncludes settings when force pushing
  • Changes File Heatmap annotations to not color the entire line by default. Want it back, add line to the gitlens.heatmap.locations setting

Fixed

  • Fixes #2997 – “push to commit” pushes everything instead of up to the selected commit
  • Fixes #2615 – Source Control views disappear after opening a file beyond a symbolic link
  • Fixes #2443 – UNC-PATH: File History changes not displaying any changes when open
  • Fixes #2625 – full issue ref has escape characters that break hover links
  • Fixes #2987 – Unable to remove all marks on reviewed files with a single operation
  • Fixes #2923 – TypeError: Only absolute URLs are supported
  • Fixes #2926 – “Open File at Revision” has incorrect editor label if revision contains path separator
  • Fixes #2971 – [Regression] The branch column header text disappears when you have a hidden ref
  • Fixes #2814 – GitLens Inspect: “Files Changed” not following when switching between commits in File History
  • Fixes #2952 – Inline blame not working because of missing ignoreRevsFile
  • Fixes issue where Changes hovers and Changes file annotations sometimes weren’t accurate
  • Fixes intermittent issue where inline blame and other revision-based editor features are unavailable when repository discovery takes a bit
  • Fixes intermittent issues where details sometimes get cleared/overwritten when opening the Commit Details view
  • Fixes issue when clicking on commits in the Visual File History to open the Commit Details view
  • Fixes issue opening stashes in the Commit Details view from the Stashes view
  • Fixes issue where GitHub/GitLab enriched autolinks could incorrectly point to the wrong repository
  • Fixes issue showing folder history in the File History view when there are uncommitted changes (staged or unstaged)
  • Fixes issue when pushing to a remote branch with different name than the local
  • Fixes tooltip styling/theming on the Commit Graph
  • Fixes issues staged files in repositories not “opened” (discovered) by the built-in Git extension

Version 14.4

Friday, October 13, 2023

GitLens 14.4 is here, featuring new enhancements to Focus View, the addition of Working Changes to Commit Details and Graph Details, and some performance improvements to Inline and Status Bar Blame.

Focus View Enhancements

Focus View now includes the ability to pin and snooze items. These options appear as clickable icons in the new snooze/pin column in the view. Pinned issues and pull requests will always show at the top of the list, while snoozed items will be hidden and moved to the new Snoozed section. To unsnooze an item, simply click on the Snoozed section header and select the unsnooze icon for that item in the pin/snooze column.

Working Changes Tab

Commit Details and Graph Details now include a separate Working Changes tab. This allows you to view your work-in-progress changes any time without losing context on your current selected change. The tab includes the ability to stage and unstage changes, open files to view changes, and open the changes in the Commit Graph and SCM view.

Inline and Status Bar Blame Performance Improvements

Inline blame and status bar blame now appear faster on hover. This performance improvement is especially notable when using connected remote integrations.

Added

  • Adds a Working Changes tab to the Commit Details and Graph Details views to show your working tree changes
    • Adds Stage Changes and Unstage Changes commands to files on the Working Changes tab
  • Adds a [Show|Hide] Merge Commits toggle to the File History view — closes #2104 & #2944
    • Adds a gitlens.advanced.fileHistoryShowMergeCommits setting to specify whether merge commits will be show in file histories
  • Adds deep link support for workspaces in the GitKraken Workspaces view
    • Deep link format: https://gitkraken.dev/link/workspaces/{workspaceId}
    • Adds a Share submenu with a Copy Link to Workspace command to workspaces in the GitKraken Workspaces view

Changed

  • Improves performance of inline blame, status bar blame, and hovers especially when working with remotes with connected integrations
  • Changes the File History view to follow renames and filters out merge commits by default — closes #2104 & #2944
  • Changes the File History view to allow following renames while showing history across all branches (which was a previous limitation of Git) — closes #2828
  • Changes to use our own implementation of fetch, push, and pull Git operations, rather than delegating to VS Code to avoid limitations especially with GitKraken Workspaces. Please report any issues and you can revert this (for now) by setting "gitlens.experimental.nativeGit" to "false" in your settings
  • Relaxes PR autolink detection for Azure DevOps to use PR <number> instead of Merged PR <number> — closes #2908
  • Changes wording on Reset Stored OpenAI Key command to Reset Stored AI Key to reflect support for other providers

Fixed

  • Fixes #2941 – Invalid Request when trying to generate a commit message using Anthropic API
  • Fixes #2940 – Can’t use Azure OpenAI model because i can’t save the openai key because of the verification
  • Fixes #2928 – Apply Changes should create new files when needed
  • Fixes #2896 – Repositories view stuck in loading state
  • Fixes #2460 – Gitlens Remote provider doesn’t work properly in “Commit graph” view
  • Fixes issue with “View as [List|Tree]” toggle not working in the Commit Details view
  • Fixes an issue with deep links sometimes failing to properly resolve when a matching repository without the remote is found
  • Fixes an issue in the Commit Graph where commits not in the history of a merge commit were showing in the same column
  • Fixes Reset Stored AI Key command to work for the current provider
  • Fixes an issue with parsing some renames in log output

Version 14.3

Thursday, September 7, 2023

This release focuses on quality of life improvements to the Commit Graph, Search & Compare, and File History as well bug fixes around the deep links and viewing diffs.

Commit Graph Improvements

You can now have a Commit Graph in the bottom Panel and one in the Editor Area open at the same time. This enables viewing more than repo at a time or different areas of the same repo at the same time.

Additionally, you can also set a preference for which mode to use by default, which you can set from the gear icon on the Commit Graph or by adding gitlens.graph.layout in settings. GitLens: Show Commit Graph from the command palette will honor that preference.

Search & Compare Review Checkboxes

From the Search & Compare, you now have checkboxes next to each files to help keep track of files you’ve reviewed. This was an long sought after request by the community, you asked and we delivered!

Thank you to our contributors

Shout-out to our awesome contributor for this release!

Added

  • Adds checkboxes to files in the Search & Compare view to allow for tracking review progress — closes #836
  • Allows the Commit Graph to be open in the panel and in the editor area simultaneously
  • Adds an Open Changes button to commits in the file history quick pick menu — closes #2641 thanks to PR #2800 by Omar Ghazi (@omarfesal)

Changed

  • Changes the gitlens.graph.layout setting to be a default preference rather than a mode change

Fixed

  • Fixes #2885 – Folder History not show changed files of commit
  • Fixes issues with opening changes (diffs) of renamed files
  • Fixes issues with deep links including when opening VS Code from the deep link

Version 14.2

Friday, August 4, 2023

GitLens 14.2 arrives with a few hotly-requested improvements to the Focus View for even greater productivity in your daily workflow.

Focus View

The Focus View has been improved with a new unified experience and includes a few new features to help you navigate pull requests and issues.

Pull Requests and Issues have now been combined into a single view with tabs to quickly toggle between showing all items, pull requests, or issues only.

You can also click on a branch name to show the branch on the Commit Graph, and if you don’t already have a remote configured for that branch you’ll be guided to add it.

Furthermore, we’ve added a search bar to the Focus View to help you quickly find pull requests or issues by their title.

Thank you to our contributors

Shout-out to all of our awesome contributors for this release!

Added

  • Improves the Focus view experience
    • Unifies pull requests and issues into a single view
    • Adds tabs to switch between showing Pull Requests, Issues, or All
    • Adds a filter/search box to quickly find pull request or issues by title
    • Adds ability to click on a branch name to show the branch on the Commit Graph
  • Adds a new command Open Changed & Close Unchanged Files… to the command palette, the context menu of the Commit Graph work-in-progress (WIP) row, and the SCM group context menu to open all changed files and close all unchanged files.
  • Adds a new command Reset Current Branch to Tip… to branch context menus in the Commit Graph and in GitLens views to reset the current branch to the commit at the chosen branch’s tip.

Changed

  • Changes Compact Graph Column Layout context menu command to Use Compact Graph Column for better clarity
  • Changes Default Graph Column Layout context menu command to Use Expanded Graph Column for better clarity
  • Improves remote parsing for better integration support for some edge cases

Fixed

  • Fixes #2823 – Handle stdout/stderr Buffers in shell run() — thanks to PR #2824 by Victor Hallberg (@mogelbrod)
  • Fixes issues with missing worktrees breaking the Worktrees view and Worktree quick pick menus

Version 14.1

Thursday, July 13, 2023

We’re delighted to introduce GitLens 14.1. We’ve enhanced integration between GitKraken Cloud and VS Code workspaces. You can now link a GitKraken Cloud workspace and VS Code workspace and GitLens can automatically update your VS Code workspace when new repositories are added to its linked counterpart.
Additionally, we’ve added deep link support for comparisons in the Search & Compare view, coupled with a new Copy Link to Comparison command in a new Share submenu, streamlining review and collaboration.

We’ve also added support for Anthropic’s new Claude 2 model for use with our experimental AI features. You can switch to it using the Switch AI Model command from the Command Palette.

Workspace Linking

When you create a VS Code workspace from a GitKraken Cloud workspace, the two are now linked. You can open a linked VS Code workspace from its cloud workspace using the new Open VS Code Workspace in New Window option (hold alt to open in the current window).

When repositories are added to a GitKraken Cloud workspace, you can automatically add those repositories to its linked VS Code workspace when that workspace is opened. You can choose to automatically add new repositories, be prompted to add them, or disable auto-adding repositories altogether for that workspace. You’ll be prompted to choose your desired behavior when creating the VS Code workspace, but it can also be changed at any time via the Change Linked Workspace Auto-Add Behavior… context menu command on the Current Window item or its linked workspace in the GitKraken Workspaces view.

You can also manually add repositories to the VS Code workspace at any time using the new Add Repositories from Linked Workspace… context menu command.

Comparison Deep Links

You can now deep link directly into comparisons in the Search & Compare view. This includes comparisons between branches, tags, and commits. You can also copy a deep link to a comparison to your clipboard using the new Copy Link to Comparison context menu command on the Share submenu.

Thank you to our contributors

Shout-out to all of our awesome contributors for this release!

Added

  • Adds the ability to link a GitKraken Cloud workspace with an associated VS Code workspace
    • Adds ability to automatically add repositories to the current VS Code workspace that were added to its associated GitKraken Cloud workspace, if desired
    • Adds a Change Linked Workspace Auto-Add Behavior… context menu command on the Current Window and linked workspace to control the desired behavior
    • Adds an Add Repositories from Linked Workspace… context menu command on the Current Window item to trigger this manually
    • Adds a new Open VS Code Workspace command to open an existing VS Code workspace associated with a GitKraken Cloud workspace
    • Adds a highlight (green) to the linked GitKraken Cloud workspace when the current VS Code workspace is associated with it in the GitKraken Workspaces view
  • Adds deep link support for comparisons in the Search & Compare view
    • Deep link format: vscode://eamodio.gitlens/r/{repoId}/compare/{ref1}[..|...]{ref2}?[url={remoteUrl}|path={repoPath}]
    • Adds a Share submenu with a Copy Link to Comparison command to comparisions in the Search & Compare view
  • Adds support for Anthropic’s Claude 2 AI model
  • Adds a progress notification while repositories are being added to a GitKraken Cloud workspace

Changed

  • Improves scrolling performance on the Commit Graph
  • Renames Convert to VS Code Workspace to Create VS Code Workspace for workspaces in the GitKraken Workspaces view to better reflect the behavior of the action
  • Hides Create VS Code Workspace and Locate All Repositories commands on empty workspaces in the GitKraken Workspaces view

Fixed

  • Fixes #2798 – Improve response from OpenAI if key used is tied to a free account
  • Fixes #2785 – Remote Provider Integration URL is broken — thanks to PR #2786 by Neil Ghosh (@neilghosh)
  • Fixes #2791 – Unable to use contributors link in README.md — thanks to PR #2792 by Leo Dan Peña (@leo9-py)
  • Fixes #2793 – Requesting username change in contributors README page — thanks to PR #2794 by Leo Dan Peña (@leo9-py)
  • Fixes some rendering issues when scrolling in the Commit Graph
  • Fixes an issue with some shared workspaces not showing up in the GitKraken Workspaces view when they should
  • Fixes an issue when adding repositories to a workspace in the GitKraken Workspaces view where the added repository would show as missing until refreshing the view

Version 14.0 — GitLens Reimagined

Wednesday, June 14, 2023

We’re thrilled to announce the release of GitLens 14 with a reimagined GitLens experience! We restructured our views layout to better enhance productivity and focus by grouping views contextually, giving you easy access to the right information when you need it. The commit graph has been moved to the (bottom) panel, providing convenient and persistent access to the graph and its details. We’ve also rethought and rebuilt our Welcome and Walkthrough as well as the Home view to provide a friendlier onboarding experience.

The power of GitKraken Workspaces now in GitLens. Workspaces are an easy way to work with and manage multiple repositories and include the ability to convert to and from a VS Code workspace, with further improvements coming soon. Create workspaces just for yourself or share (coming soon to GitLens) them with your team for faster onboarding and better collaboration.

New Views layout

We’ve grouped views contextually and introduced GitLens Inspect, giving you easy access to the right information when you need it. We’ve moved some of our views from their previous home, in Source Control, into either the GitLens or the new GitLens Inspect side bar.

GitLens Inspect side bar

The all-new GitLens Inspect is like an x-ray or developer tools inspector into your code, which focuses on providing contextual information and insights to what you’re actively working on.

Views include:

  • Commit Details
  • Line History
  • File History
  • Visual File History
  • Search & Compare

Pro tip: you can drag the entire GitLens Inspect Side Bar onto your secondary Side Bar, without needing to arrange views on-by-one.

GitLens side bar

We’ve re-focused this to be the home of GitKraken services (e.g. GitKraken Workspaces) as well as discovery, help, and support.

Views include:

  • Home view
  • GitKraken Workspaces
  • GitKraken Account

Source Control side bar

We’ve slimmed down this side bar to only contain views that are focused on your repositories.

Views include:

  • Commits
  • Branches
  • Remotes
  • Stashes
  • Tags
  • Worktrees
  • Contributors
  • Repositories (hidden by default)

(Bottom) Panel

The new home for the Commit Graph, providing convenient and easy access to the graph and the new Commit Graph Details view.

Views include:

  • Commit Graph
  • Commit Graph Details

Pro tip: You can toggle the Commit Graph between Panel and Editor layouts by clicking the “cog” icon on the upper right corner of the Graph view.
Pro tip 2: When the Commit Graph is in the Panel Layout, you can quickly toggle it via the new Toggle Commit Graph and Toggle Maximized Commit Graph commands.

Adopting the new views layout

Unless you opt into the new layout, which we recommend, your existing views will stay where they are. You can opt in at any time from Reset Views Layout in the Command Palette.

New Onboarding Experience

The rebuilt welcome goes beyond quick settings and now includes overviews of important features as well as bringing better visibility to the views and functionality GitLens offers. Along the same lines, we consolidated and streamlined our walkthroughs.

Also, we’ve made significant changes to the home view, with the help of your feedback, to refocus on quick access and discovery of many GitLens features.

☁️ GitKraken Workspaces

GitKraken Workspaces are a convenient way to group and manage multiple repositories. Cloud workspaces store the metadata of the grouped repositories and can be accessed across machines and GitKraken products. They can easily be imported into or created from VS Code workspaces.

Please note that while using cloud workspaces requires a free account, shared cloud workspaces, which are shared between GitKraken organizations and teams, require a trial or plan. Shared Workspaces functionality is coming soon to GitLens.

Workspaces can be accessed in the new GitKraken Workspaces view in the GitLens side bar.

✨ Commit Graph Enhancements

We’ve greatly improved the ease of access to the Commit Graph as well as additional change information and easy-to-use customization options.

New Home in (Bottom) Panel

The Commit Graph has moved into the (bottom) panel, providing convenient and persistent access to the graph and its details. If you prefer the Graph in the editor area, you can toggle between Panel and Editor layouts by clicking the “cog” icon on the upper right corner of the Graph view.

Minimap and Markers

The Minimap which shows an overview of commit activity, previously an experimental feature, is now on by default. You can now toggle between ‘lines changed’ and ‘commits’ in the minimap display.

With both the Minimap and the Commit Graph scrollbar, you can toggle specific markers on and off, including local branch, remote branch, stash, and tag markers. For the minimap, use the split minimap button, and for the scrollbar use the Scroll Markers submenu from the “cog” icon at the top of the scrollbar.

New Column and Column Layout

The Changes column, which shows the size of commit changes, is now visible by default. The column now also includes a count of the changed files, helping you quickly grasp the scale of each change.

Reset your columns between the Default and the new Compact set via the context menu on the graph column headers, making it easy to toggle into a more minimal experience.

Added

  • Adds an all-new Welcome experience to quickly get started with GitLens and discover features — even if you are familiar with GitLens, definitely check it out!
  • Adds a new streamlined Get Started with GitLens walkthrough
  • Adds an all-new Home view for quick access to GitLens features and GitKraken Account for managing your account
  • Adds a new reimagined views layout — see discussion #2721 for more details
    • Rearranges the GitLens views for greater focus and productivity, including the new GitLens Inspect and moved some of our views from Source Control into either GitLens or GitLens Inspect.
    • Adds a new GitLens Inspect activity bar icon focuses on providing contextual information and insights to what you’re actively working on
    • Adds a Reset Views Layout command to reset all the GitLens views to the new default layout
  • Adds an all-new GitKraken Workspaces ☁️ feature as a side bar view, supporting interaction with local and cloud GitKraken workspaces, lists of repositories tied to your account.
    • Create, view, and manage repositories on GitKraken cloud workspaces, which are available with a GitKraken account across the range of GitKraken products
    • Automatically or manually link repositories in GitKraken cloud workspaces to matching repositories on your machine
    • Quickly create a GitKraken cloud workspace from the repositories in your current window
    • Open a GitKraken cloud workspace as a local, persisted, VS Code workspace file (further improvements coming soon)
    • Open a cloud workspace or repository in a new window (or your current window)
    • See your currently open repositories in the Current Window section
    • Explore and interact with any repository in a GitKraken cloud workspace, some actions are currently limited to repositories which are open in your current window — ones highlighted in green
    • (Coming soon) Share your GitKraken cloud workspaces with your team or organization
  • Adds new Commit Graph ✨ features and improvements
    • Makes the Panel layout the default for easy access to the Commit Graph with a dedicated details view
    • Adds two new options to the graph header context menu
    • Reset Columns to Default Layout – resets column widths, ordering, visibility, and graph column mode to default settings
    • Reset Columns to Compact Layout – resets column widths, ordering, visibility, and graph column mode to compact settings
    • Adds a Toggle Commit Graph command to quickly toggle the graph on and off (requires the Panel layout)
    • Adds a Toggle Maximized Commit Graph command to maximize and restore the graph for a quick full screen experience (requires the Panel layout)
    • Enables the Minimap by default, as its no longer experimental, to provide a quick overview of of commit activity above the graph
    • Adds ability to toggle between showing commits vs lines changed in the minimap (note: choosing lines changed requires more computation)
    • Adds a legend and quick toggles for the markers shown on the minimap
    • Defers the loading of the minimap to avoid impacting graph performance and adds a loading progress indicator
    • Adds a gitlens.graph.minimap.enabled setting to specify whether to show the minimap
    • Adds a gitlens.graph.minimap.dataType setting to specify whether to show commits or lines changed in the minimap
    • Adds a gitlens.graph.minimap.additionalTypes setting to specify additional markers to show on the minimap
    • Makes the Changes column visible by default (previously hidden)
    • Defers the loading of the Changes column to avoid impacting graph performance and adds a loading progress indicator to the column header
    • Adds a changed file count in addition to the changed lines visualization
    • Improves the rendering of the changed line visualization and adds extra width to the bar for outlier changes so that they stand out a bit more
    • Adds an Open Repo on Remote button to left of the repo name in the graph header
    • Improves contextual help on the search input as you type
    • Improves tooltips on Branch/Tag icons to be more uniform and descriptive
    • Adds new context menu options to the Commit Graph Settings (cog, above the scrollbar) to toggle which scroll marker to show
    • Improves alignment of scroll markers on the scrollbar, and adds a gap between the last column and the scrollbar
  • Adds the ability to choose which AI provider, OpenAI or Anthropic, and AI model are used for GitLens’ experimental AI features
    • Adds a Switch AI Model command to the command palette and from the Explain (AI) panel on the Commit Details view
    • Adds a gitlens.ai.experimental.provider setting to specify the AI provider to use (defaults to openai)
    • Adds a gitlens.ai.experimental.openai.model setting to specify the OpenAI model (defaults to gpt-3.5-turbo) — closes #2636 thanks to PR #2637 by Daniel Rodríguez (@sadasant)
    • Adds a gitlens.ai.experimental.anthropic.model setting to specify the Anthropic model (defaults to claude-v1)
  • Adds expanded deep link support
    • Adds cloning, adding a remote, and fetching from the target remote when resolving a deep link
    • Adds deep linking to a repository with direct file path support
  • Adds the automatic restoration of all GitLens webviews when you restart VS Code
  • Adds ability to control encoding for custom remote configuration — closes #2336
  • Improves performance and rendering of the Visual File History and optimizes it for usage in the side bars
    • Adds a Full history option to the Visual File History — closes #2690
    • Adds a loading progress indicator
  • Adds Reveal in File Explorer command to repositories
  • Adds Copy SHA command to stashes
  • Adds new icons for virtual repositories

Changed

  • Changes header on GitLens Settings to be consistent with the new Welcome experience
  • Reduces the visual noise of currently inaccessible ✨ features in the side bars
  • Performance: Improves rendering of large commits on the Commit Details view
  • Performance: Defers possibly duplicate repo scans at startup and waits until repo discovery is complete before attempting to find other repos
  • Security: Disables Git access in Restricted Mode (untrusted)
  • Security: Avoids dynamic execution in string interpolation

Fixed

  • Fixes #2728 – Submodule commit graph will not open in the panel layout
  • Fixes #2734 – 🐛 File History: Browse … not working
  • Fixes #2671 – Incorrect locale information provided GitLens
  • Fixes #2689 – GitLens hangs on github.dev on Safari
  • Fixes #2680 – Git path with spaces is not properly quoted in the command
  • Fixes #2677 – Merging branch produces path error
  • Fixes an issue with comparison commands on File/Line History views
  • Fixes an issue with stale state on many webviews when shown after being hidden
  • Fixes an issue with fetch/push/pull on the Commit Graph header
  • Fixes an issue where Branch / Tag items on the Commit Graph sometimes wouldn’t expand on hover
  • Fixes an issue where some command were showing up on unsupported schemes
  • Fixes an issue where the file/line history views could break because of malformed URIs

Version 13.6

Thursday, May 11, 2023

GitLens 13.6 brings a range of enhancements and additions to the Commit Graph and refinements to our context menus. We’ve made improvements to the layout, condensing author names and column titles into avatars and icons when sized to minimums, and added flexibility of rearranging and moving columns as desired. This allows for a more streamlined and personalized GitLens experience. We have also updated the Commit Graph’s toolbar to dynamically show a Push or Pull action, depending on a branch’s state in relation to its upstream remote.

Context Menu Updates

To improve structure and findability of our menu options, we’ve made several changes to our context menus. Many Copy Remote URL commands, which were previously in a Copy As submenu, have been moved to a Share submenu within GitLens views, which aligns with VS Code menus. And once microsoft/vscode#176316 lands we will move the rest of the Copy Remote URL commands into the appropriate Share submenu. This reorganization consolidates related commands and makes it easier to locate and utilize them.

Similarly, the Copy SHA and Copy Message commands, previously nested in submenus, have been promoted to the root of the context menu. This elevates their visibility and enables quick access for performing actions on commits. Additionally, the Copy Relative Path command has been relocated to the root of the context menu. These adjustments enhance convenience when working with file paths.

✨ Commit Graph Enhancements

We’ve made it easier to customize your Commit Graph experience as well as improvements for better readability when in compact layouts.

Compact Graph Improvements

Previously unmovable columns within the Commit Graph can now be rearranged and customized according to your preferences. This flexibility enables you to arrange the columns in a way that best suits their workflow and priorities.

In addition, we have implemented a more compact layout by removing the commit icon when avatars are hidden. This optimization maximizes the utilization of screen space and results in a cleaner and more streamlined visual representation.

Moreover, the Author column now displays avatars instead of text when sized to its minimum width. That combined with the compact layout for the Graph column provide a nice compact experience with no loss of fidelity.

Column Headers

Commit Graph column headers have received dynamic behavior for enhanced readability. When the Commit Graph columns are compacted, the column headers seamlessly switch from displaying text to icons. This adaptation ensures that crucial information remains visible, even in constrained display settings.

Stash Improvements

We’ve added the ability to rename stashes. If you are like me and often stash changes in a rush with very poor names, e.g. “wip” and then kick yourself later for not providing a more descriptive name, the this feature is for you. You can now rename any stash at any time.

You can now search within stashes using the Commit Graph, the Search & Compare view, or the Search Commits command. This improvement facilitates efficient navigation and retrieval of specific stash entries.

Added

  • Adds the ability to rename stashes — closes #2538
    • Adds a new Rename Stash… command to the Stashes view
  • Adds new Commit Graph features and improvements
    • Adds a Push or Pull toolbar button depending the current branch being ahead or behind it’s upstream
    • Adds support for the Commit Graph over Visual Studio Live Share sessions
    • Adds the ability to move all of the columns, including the ones that were previously unmovable
    • Automatically switches column headers from text to icons when the column’s width is too small for the text to be useful
    • Automatically switches the Author column to shows avatars rather than text when the column is sized to its minimum width
  • Adds the ability to search stashes when using the commit search via the Commit Graph, Search & Compare view, or the Search Commits command
  • Adds an Open Visual File History command to the new File History submenu on existing context menus
  • Allows the Repositories view for virtual repositories
  • Honors the git.repositoryScanIgnoredFolders VS Code setting
  • Adds Share, Open Changes, and Open on Remote (Web) submenus to the new editor line numbers (gutter) context menu
  • Adds an Open Line Commit Details command to the Open Changes submenus on editor context menus
  • Adds an Open Changes submenu to the row context menu on the Commit Graph

Changed

  • Refines and reorders many of the GitLens context menus and additions to VS Code context menus
    • Moves Copy Remote * URL commands from the Copy As submenu into the Share submenu in GitLens views
    • Adds a Share submenu to Source Control items
    • Moves Copy SHA and Copy Message commands on commits from the Copy As submenu into the root of the context menu
    • Moves Copy Relative Path command on files from the Copy As submenu into the root of the context menu
    • Moves file history commands into a File History submenu
    • Moves Open * on Remote commands into Open on Remote (Web) submenu
    • Renames the Commit Changes submenu to Open Changes
    • Renames Show Commit command to Quick Show Commit and Show Line Commit command to Quick Show Line Commit for better clarity as it opens a quick pick menu
  • Changes the file icons shown in many GitLens views to use the file type’s theme icon (by default) rather than the status icon
    • Adds a gitlens.views.commits.files.icon setting to specify how the Commits view will display file icons
    • Adds a gitlens.views.repositories.files.icon setting to specify how the Repositories view will display file icons
    • Adds a gitlens.views.branches.files.icon setting to specify how the Branches view will display file icons
    • Adds a gitlens.views.remotes.files.icon setting to specify how the Remotes view will display file icons
    • Adds a gitlens.views.stashes.files.icon setting to specify how the Stashes view will display file icons
    • Adds a gitlens.views.tags.files.icon setting to specify how the Tags view will display file icons
    • Adds a gitlens.views.worktrees.files.icon setting to specify how the Worktrees view will display file icons
    • Adds a gitlens.views.contributors.files.icon setting to specify how the Contributors view will display file icons
    • Adds a gitlens.views.searchAndCompare.files.icon setting to specify how the Search & Compare view will display file icons
  • Renames Delete Stash… command to Drop Stash… in the Stashes view
  • Removes the commit icon when hiding avatars in the Commits view to allow for a more compact layout
  • Limits Git CodeLens on docker files — closes #2153
  • Shows progress notification for deep links earlier in the process — closes #2662

Fixed

  • Fixes #2664 – Terminal run Git command can be “corrupted” if there is previous text waiting in the terminal
  • Fixes #2660 – Commands executed in the terminal fail to honor found Git path
  • Fixes #2654 – Toggle zen mode not working until you restart vscode
  • Fixes #2629 – When on VSCode web, add handling for failing repo discovery
  • Fixes many issues with using GitLens over Visual Studio Live Share sessions
  • Fixes mouse scrubbing issues with the minimap on the Commit Graph
  • Fixes Refresh Repository Access and Reset Repository Access Cache commands to always be available
  • Fixes state not being restored on the Home webview
  • Fixes getting the oldest unpushed commit when there is more than 1 remote
  • Fixes an issue with the quick input on the Git Command Palette unexpectedly going back to the previous step
  • Fixes GitLens access tooltip not being visible when hovering in the Commit Graph

Removed

  • Removes “Open Commit on Remote” command from the VS Code Timeline view as it can no longer be supported — see microsoft/vscode#177319

Version 13.5

Thursday, Apr 6, 2023

With 13.5, we’ve added the ability to switch to an alternate panel layout for the Commit Graph, which moves the Commit Graph into the bottom panel and adds a new Commit Graph Details view alongside on the right, for more convenient and persistent access. You can now also switch to a compact layout for the Graph column and shrink the Branch / Tag column to a single icon to reduce the space and allow you to focus on what you deem most important. You can now take action on your pull requests in the Focus View, with the new ability to create or switch branches or worktrees. We’ve also heard your feedback that the Commit Details view pinning was confusing and hard to work with, so 13.5 includes many improvements to make that experience better. We’ve also continued our quest to reduce the size and improve performance of GitLens and have shaved another ~7% off the GitLens bundle.

✨ Commit Graph Layouts

The new panel layout brings even more flexibility and customization options to GitLens. While using the panel layout, GitLens moves the Commit Graph into the bottom panel and adds a new Commit Graph Details view alongside on the right. If the layout in the bottom panel doesn’t suit your needs you can move the Commit Graph around to other locations (side bar, secondary side bar, etc) to suit your preferences. Whether you prefer to have the Commit Graph in the editor or in a separate panel, GitLens makes it easy to switch and find the layout that works best for you.

To switch to the panel layout, simply click on the Commit Graph settings cog located at the top right of the Commit Graph. From there, select the “Switch Commit Graph to Panel Layout” option, and if you want to switch back follow the same steps and choose “Switch Commit Graph to Editor Layout”.

Compact Graph Column Layout

With the new compact Graph column layout, GitLens provides a more streamlined and compact layout to reduce the space required to visualize the commit history and branch relationships.

To enable the new compact Graph Column layout, right click on the Graph column header, and select the “Compact Graph Column Layout” option. If you want to switch back follow the same steps and choose “Default Graph Column Layout”.

Pull Requests on Local Branches

You can now see pull requests (PRs) for your local branch upstreams directly on the local branches themselves. You no longer have to hunt for the local branch’s upstream on the Commit Graph to see the associated PR.

Publish Local Branches from Commit Graph

Publishing local branches directly from the Commit Graph is a nice productivity boost. You can quickly and easily publish your local changes without having to switch to the Branches view or use the command line.

✨ Focus View Pull Request Actions

The Focus View is no longer read-only! We’ve introduced new actions within Focus View, aimed at enhancing your workflow and productivity. You can now easily create a branch or worktree, or switch/open an existing one, for a PR directly from the Focus View page, streamlining the process of reviewing or contributing to pull requests. As a quick worktree refresher, creating a worktree from the PR will let you review or contribute to multiple PRs simultaneously without affecting your current branch and working tree.

Commit Details Interaction Improvements

We’ve heard your feedback on the Commit Details view and the confusion and difficulty with using the pinning feature. We updated the visual appearance of the pinned state, so its easier to know when Commit Details is pinned. Additionally, we’ve introduced navigation controls that enable you to move back and forth through the commits you’ve recently viewed, helping to avoid losing context as you navigate through your code.

Thank you to our contributors

Shout-out to all of our awesome contributors for this release!

Added

  • Adds the ability to switch to an alternate panel layout for the Commit Graph — closes #2602 and #2537
    • Adds a new context menu from the Commit Graph Settings (cog) to switch between the “Editor” and “Panel” layouts
    • Adds a gitlens.graph.layout setting to specify the layout of the Commit Graph
    • editor – Shows the Commit Graph in an editor tab
    • panel – Shows the Commit Graph in the bottom panel with an additional Commit Graph Details view alongside on the right
  • Adds new Commit Graph features and improvements
    • Adds a compact layout to the Graph column of the Commit Graph
    • Adds a context menu option to the header to toggle between the “Compact” and “Default” layouts — closes #2611
    • Shows pull request icons on local branches when their upstream branch is associated with a pull request
    • Adds tooltips to work-in-progress (WIP) and stash nodes
    • Adds a “Publish Branch” context menu action to local branches without an upstream branch — closes #2619
    • Lowers the minimum width of the “Branch / Tag” column
  • Adds actions to Focus View Pull Requests
    • Switch to or create a local branch
    • Create or open a worktree from the branch
  • Adds a Generate Commit Message (Experimental)… command to the SCM context menus

Changed

  • Reduces the size of the GitLens (desktop) bundle which reduces memory usage and improves startup time — ~7% smaller (1.21MB -> 1.13MB)
    • Consolidates the “extension” side of all the GitLens webviews/webview-views into a unified controller and code-splits each webview/webview-view into its own bundle
    • Allows for very minimal code to be loaded for each webview/webview-view until its used, so if you never use a webview you never “pay” the cost of loading it
  • Changes Open Associated Pull Request command to support opening associated pull requests with the current branch or the HEAD commit if no branch association was found — closes #2559
  • Improves the “pinning” of the Commit Details view
    • Avoids automatically pinning
    • Changes the pinned state to be much more apparent
  • Changes Commit Details to always open diffs in the same editor group as the currently active editor — closes #2537

Fixed

  • Fixes #2597 – Allow disabling “Open worktree for pull request via GitLens…” from repository context menu
  • Fixes #2612 – Clarify GitLens telemetry settings
  • Fixes #2583 – Regression with Open Worktree for Pull Request via GitLens… command
  • Fixes #2252 – “Copy As”/”Copy Remote File Url” copies %23 instead of # in case of Gitea — thanks to PR #2603 by WofWca (@WofWca)
  • Fixes #2582Visual File History background color when in a panel
  • Fixes #2609 – If you check out a branch that is hidden, GitLens should show the branch still
  • Fixes tooltips sometimes failing to show in Commit Graph rows when the Date column is hidden
  • Fixes #2595 – Error when stashing changes

Version 13.4

Thursday, Mar 16, 2023

With 13.4, we’ve introduced an experimental new AI feature to assist with writing commit messages, improved GitLens performance by reducing its size, made improvements to the ✨Commit Graph, and accepted community contributions as well as many bug fixes from community feedback.

AI-Generated Commit Messages (Experimental)

We’ve introduced a new experimental feature to assist with writing commit messages by leveraging OpenAI. To start, stage some changes you want to commit and generate a commit message for and then run the “Generate Commit Message (Experimental)” command from the Command Palette. From there you will be guided through the process of accepting to send the diff of your staged changes to OpenAI and the entry of your OpenAI key. Once completed, the generated commit message will be entered into the commit input box on the Source Control sidebar. You can also enter additional context about your changes in the commit box and those will also be sent to help generate a better message.

Additionally, you can customize the gitlens.experimental.generateCommitMessagePrompt setting to control the prompt used to structure and format the generated commit message. You could have it structure commit messages in the conventional commit style, or you can have fun with it and make your commit messages in the style of a pirate, Shakespeare, etc.

This is a very early peek into features and ideas that can leverage AI – look forward to much more in the near future!

GitLens Size Reduction

Over the last couple releases we’ve made significant progress on optimizing the footprint of GitLens. We’ve focused a lot on the bundle sizes to allow for faster start-up times of both the extension itself and all of our webviews. These optimizations also help reduce our memory usage. We are continually looking for opportunities to optimize and reduce our footprint so look for more progress in the future!

Here are some numbers:

  • GitLens desktop bundle has been reduced by ~37% from 1.91MB to 1.21MB
  • GitLens web bundle (for vscode.dev / github.dev) has been reduced by ~39% from 2.05MB to 1.24MB
  • GitLens Commit Graph webview has been reduced by ~27% from 1.03MB to 758KB and that is including the new minimap and rich scroll markers
  • GitLens Home view has been reduced by ~41% from 267KB to 160KB
  • GitLens Visual File History view has been reduced by ~9% from 508KB to 461KB

✨ Commit Graph Enhancements

Upstream Tracking

It’s now possible to effortlessly keep track of upstreams of your local branches in the commit graph. The upstreams of visible local branches, along with their corresponding commit history, will be displayed in the graph even if other remote branches are filtered out from your settings.

We’ve also revised the wording of the remote filter setting to “Hide Remote-only Branches.

Graph Alignment

The graph column is now more left-aligned, making it easier to read and follow the history of a branch at a glance.

Branches and Tags on Remote Repositories

You can now see the tips of your branches and tags in the Commit Graph on remote repositories! Previously, opening a remote repository in the graph would show only the current branch. Currently, we are still limited to only showing commits for the current branch, so the included branches and tags are ones pointing to commits in the current branch’s commit history.

Sunsetting GitLens Insiders (Replaced with Pre-release)

We’ve deprecated the GitLens Insiders edition in favor of a Pre-release version which is directly supported inside VS Code and is much easier to opt-in to and out of. Existing users of GitLens Insiders should have been automatically migrated to the Pre-release version. The Pre-release version of GitLens is a nightly build of GitLens, just as the GitLens Insiders edition was.

To opt-in to the Pre-release edition, select GitLens from the extensions sidebar and press “Switch to Pre-Release Version”.

Thank you to our contributors

Shout-out to all of our awesome contributors for this release!

Added

  • Adds an experimental Generate Commit Message (Experimental) command to use OpenAI to generate a commit message for staged changes
    • Adds a gitlens.experimental.generateCommitMessagePrompt setting to specify the prompt to use to tell OpenAI how to structure or format the generated commit message — can have fun with it and make your commit messages in the style of a pirate, etc
  • Adds auto-detection for .git-blame-ignore-revs files and excludes the commits listed within from the blame annotations
  • Adds a Open Git Worktree… command to jump directly to opening a worktree in the Git Command Palette
  • Adds a Copy Relative Path context menu action for active editors and file nodes in sidebar views
  • Adds the ability to see branches and tags on remote repositories (e.g. GitHub) on the Commit Graph
    • Currently limited to only showing them for commits on the current branch, as we aren’t yet able to show all commits on all branches

Changed

  • Improves the display of items in the Commit Graph
    • When showing local branches, we now always display the upstream branches in the minimap, scrollbar markers, and graph rows
    • When laying out lanes in the Graph column, we now bias to be left aligned when possible for an easier to read and compact graph visualization
  • Improves Open Worktree for Pull Request via GitLens… command to use the qualified remote branch name, e.g. owner/branch, when creating the worktree
  • Removes Insiders edition in favor of the pre-release edition
  • Reduces the size of the GitLens bundle which improves startup time
    • GitLens’ extension bundle for desktop (node) is now ~24% smaller (1.58MB -> 1.21MB)
    • GitLens’ extension bundle for web (vscode.dev/github.dev) is now ~6% smaller (1.32MB -> 1.24MB)

Fixed

  • Fixes #2550 – Related pull request disappears after refresh
  • Fixes #2549 – toggle code lens does not work with gitlens.codeLens.enabled == false
  • Fixes #2553 – Can’t add remote url with git@ format
  • Fixes #2083, #2539 – Fix stashing staged changes — thanks to PR #2540 by Nafiur Rahman Khadem (@ShafinKhadem)
  • Fixes #1968 & #1027 – Fetch-> fatal: could not read Username — thanks to PR #2481 by Skyler Dawson (@foxwoods369)
  • Fixes #2495 – Cannot use gitlens+ feature on public repo in some folders
  • Fixes #2530 – Error when creating worktrees in certain conditions
  • Fixed #2566 – hide context menu in output panel — thanks to PR #2568 by hahaaha (@hahaaha)
  • Fixes #2533 – Current Branch Only graph filter sometimes fails
  • Fixes #2504 – Graph header theme colors were referencing the titlebar color properties
  • Fixes #2527 – shows added files for Open All Changes
  • Fixes an issue where trial status can be shown rather than a purchased license
  • Fixes graph issue where scroll markers do not update until mouseover when changing the gitlens.graph.scrollMarkers.additionalTypes setting.

Version 13.3

Thursday, Feb 23, 2023

Supercharge your Git game with GitLens 13.3: the latest update to help you master Git like a pro. With 13.3 we’re introducing Workspace Focus View, Deep Linking Support, and Commit Graph Improvements featuring the new (experimental) minimap and changes column.

GitLens also just got a whole lot faster with the release of version 13.3! Thanks to some serious bundle slimming, the startup times have significantly improved.

  • GitLens’ extension bundle for desktop (node) is now ~18% smaller
  • GitLens’ extension bundle for web (vscode.dev/github.dev) is now ~37% smaller
  • GitLens’ Commit Graph webview bundle is now ~31% smaller

✨Focus View (Preview)

With the preview of GitLens Focus View, you can streamline your workflow and prioritize your tasks with ease. The Focus View feature gives you a comprehensive list of all your most important work across all your GitHub repos. No more jumping back and forth between multiple pages or repos – GitLens Focus View makes it simple and efficient to keep track of and manage your work progress.

The new Focus View will provide you with a summary of Pull Requests and Issues relevant to you for the repositories grouped in your Workspace.

  • My Pull Requests: shows all GitHub PRs opened by you, assigned to you, or awaiting your review
  • My Issues: shows all issues created by you, assigned to you, or that mention you.

Instead of hunting for these pieces of information separately, you can get a holistic view of what you’re working on.

*Note Focus View is currently in a Preview Only state, it is subject to change in the future.

✨ Commit Graph improvements

Minimap (Experimental)

Click the Toggle Minimap icon in the right corner of the Commit Graph top bar to toggle the Minimap on and off. As this is an experimental feature, it is off by default – and we would love to hear your feedback and suggestions.

The idea behind the Minimap is to provide a whole new dimension to the Commit Graph. You can quickly see the activity of the repo, see HEAD/upstream, branches (local and remote), and easily jump to them.

The green line showcases HEAD while search results are depicted by yellow lines. The highlighted region shows the Commit Graph area that is in view. Markers are arranged in two rows of stacked blocks:

  • In the upper row, the blue blocks signify remote branches, while the brown blocks refer to tags.
  • Within the lower row, the pink blocks denote stashes, and the blue blocks represent local branches.

We really want to hear your feedback – this is still a very early feature and we’re currently still playing with colors, and additional features. To leave us feedback such as what do you think, is this useful, what does it have that you like, what is it missing, etc. reach out to us on the GitLens, GitHub Discussion board.

Changes column (lines added/deleted)

Reduce time and effort required to navigate through code changes, with the changes column in GitLens. The changes column provides a visual representation of changes made to files in each commit, with green bars indicating added lines and red bars indicating deleted lines.

This visual display allows you to quickly identify the extent of changes made to files across multiple commits, making it easier to pinpoint specific areas of code that have been modified.

You can toggle the Change Column by right clicking the graph header and clicking “Show Changes”.

Scroll Markers (Rich scrollbar)

Scroll Markers adds a rich layer of information to the Commit Graph scrollbar. Now you can quickly find and jump to checked-out branches, selected rows, search results, as well as important points such as HEAD and refs. Similar to Overview Ruler in VS Code, Scroll Markers provide a visual indicator on the scrollbar.

Our intention with Scroll Markers is to save you time and effort by allowing you to quickly identify and jump to the relevant sections of your Git history. It’s a powerful new addition to the Commit Graph to help streamline workflow.

Branch upstream status

The Commit Graph now shows the upstream status of local branches with an upstream. You’ll be able to quickly identify when your local branch is out of sync with its upstream branch with the new indicator, which shows how many commits are ahead or behind your upstream branch.

You can also double-click on the upstream indicator, to pull or push the pending commits to bring your local branch back in sync with its upstream. This makes it easy to keep track of upstream changes to your local branches and keep them up to date.

Work In Progress Row improvements

With the latest Work In Progress Row improvements, with a single right click, you can access the WIP contextual menu. Giving you access to a range of useful options, including Stash All Changes, Open Details, and Open Source Control. These features allow you to more effectively manage your WIP.

Deep linking support

Deep linking provides you with the ability to easily share specific remote repositories, commits, branches, and tags by copying the link to your clipboard and pasting it into a Jira issue or a Slack conversation for example.

The link will then open in the Commit Graph and can be used to quickly access and review relevant artifacts. With deep linking support, you can improve collaboration and communication by seamless sharing of important information related to your Git repos.

Added

  • Adds new Commit Graph features and improvements
    • Adds a new experimental minimap of commit activity to the Commit Graph
    • Adds a new experimental Changes column visualizing commit changes
    • Adds markers to the Commit Graph scroll area indicating the location of the selected row, search results, current branch, upstream, and more
    • Adds the ability to show upstream (ahead/behind) status on local branches with an upstream
    • Adds a double-click action on the status to pull (when behind) or push (when ahead) pending changes
    • Adds context menu actions to Push, Pull, and Fetch the local branch
    • Adds a gitlens.graph.showUpstreamStatus setting to toggle upstream (ahead/behind) indicators on branches
    • Adds the ability to show any associated pull requests with branches
    • Adds a double-click action on the PR icon to open the PR in the browser
    • Adds context menu actions to Open Pull Request on Remote and Copy the PR URL
    • Adds a gitlens.graph.pullRequests.enabled setting to toggle PR icons — closes #2450
    • Adds a context menu to the WIP row — closes #2458
    • Adds a double-click action on commit rows to open the Commit Details view
    • Improves Author and Avatar tooltips to now also show the contributor’s email address, if available
    • Improves Date tooltips to now always show both the absolute and relative date
  • Adds the ability to copy and share links directly to repositories, branches, commits, and tags in the Commit Graph
    • Adds context menu actions to copy direct links in the Share submenu
  • Improves the Worktree creation experience
    • Adds a prompt after the worktree is created to choose how to open the worktree
    • Adds a worktrees.openAfterCreate setting to specify how and when to open a worktree after it is created
    • Ensures new worktrees are created from the “main” repo, if already in a worktree
  • Adds a new remote command to the Git Command Palette to add, prune, and remove remotes
  • Adds a Open Worktree for Pull Request via GitLens… context menu command on pull requests in the GitHub Pull Requests and Issues extension’s views
    • Opens an associated worktree, if one exists, otherwise it creates a new worktree for the pull request
  • Adds settings to control the format of commits in the GitLens views

Changed

  • Greatly reduces the size of many of GitLens’ bundles which improves startup time
    • GitLens’ extension bundle for desktop (node) is now ~18% smaller
    • GitLens’ extension bundle for web (vscode.dev/github.dev) is now ~37% smaller
    • GitLens’ Commit Graph webview bundle is now ~31% smaller
  • Changes the Contributors view to be shown by default on the GitLens sidebar

Removed

  • Removes the use of an external color library for the File Heatmap annotations and webview themes — reduces the bundled extension size

Fixed

  • Fixes #2355 – Search by changes stops working in version 13.x.x
  • Fixes #2473 – Commit graph status bar show wrong last fetched date
  • Fixes #2409 – Commit Graph Show Current Branch Only shows unrelated commits from other branches
  • Fixes an issue where pinning not being respected in Commit Details view
  • Fixes graph issue where search results that are merge commits are not highlighted when the gitlens.graph.dimMergeCommits setting is enabled
  • Fixes graph issue where rows with tags belonging to a hovered branch are not highlighted when the gitlens.graph.highlightRowsOnRefHover setting is enabled

Version 13.2

Tuesday, Dec 20th, 2022

Since the release of GitLens 13, we know how the power of GitLens+ features like the Commit Graph, have been helping supercharge your dev workflow. That’s why we’re excited to present GitLens 13.2, with all new (and highly requested) Graph improvements like filtering, to quickly focus on what is most important to you. We’ve also streamlined the Commit Graph interface with a new header bar, providing context and quick access to switch between repositories or branches, and even fetch to keep up to date. Get ready to level up your Git game with GitLens 13.2!

Filtering

GitLens 13.2 introduces filtering , which allows you to display a subset of your graph’s information and helps you hone in on specific details of your graph that matter the most.

Filtering Capabilities

Use graph filtering in GitLens to get laser focused on the branch you’re working on and its remote:

  • Only Show the Current Branch

    • Display only the branch that you’re currently working on and it’s remote. In order to focus your attention on the things landing in this branch, and then quickly unfilter to “zoom” back out and see everything in flight.
  • Hide Remote Branches

    • Hides commits from the graph view that are only on remote branches.
  • Hide Tags

    • Hides all tags that point to commit rows.
  • Hide Stashes

    • Hides all stash rows.
  • Dim Merge Commit Rows

    • Deemphasizes merge commit rows.

Graph UX Improvements

We’ve updated the user interface, so you can get to all your favorite features even faster. Now, you can access change repo, account status, and filtering from the top of the Commit Graph page.

Header Updates

By merging the contextual information from the footer into the header, including the new Branch Picker and Fetch Action we’ve made it easier for you to manage your branches and work more effectively.

  • Branch Picker

    • Save time, by easily selecting the branch you want from the drop down branch picker.
  • Fetch Action

    • Easily keep your local repo up-to-date and in sync with the fetch action.

Shortcut Keys

Using the new keyboard shortcuts, SHIFT+UP and SHIFT+DOWN on the Commit Graph helps you locate what you need more efficiently and effectively by staying within the branch and moving between graph rows. This can be particularly useful if you are working on a complex project with many branches.

Added

  • Adds many all-new Commit Graph features and improvements
    • Adds the ability to filter commits, branches, stashes, and tags
    • Adds a new Filter Graph dropdown button at the start of the search bar
    • Adds ability to quickly switch between Show All Local Branches and Show Current Branch Only branch filtering options
      • Show All Local Branches — displays all local branches (default)
      • Show Current Branch Only — displays only the current branch and it’s upstream remote (if exists and Hide Remote Branches isn’t enabled)
    • Adds ability to hide all remote branches, stashes, and tags
    • Adds the ability to dim (deemphasize) merge commits
    • Adds a new header bar to provide quick access to common actions
    • Shows the currently selected repository with the ability to switch repositories when clicked (if multiple repositories are open)
    • Shows the current branch with the ability to switch branches when clicked
    • Provides a fetch action which also shows the last fetched time
    • Also moves GitLens+ feature status and feedback links to the top right
    • Adds new ability to reorder columns by dragging and dropping column headers (not all columns are reorderable)
    • Adds new keyboard shortcuts
    • Use shift+down arrow and shift+up arrow to move to the parent/child of the selected commit row
    • Holding the ctrl key with a commit row selected will highlight rows for that commit’s branch
    • Adds new settings
    • Adds a gitlens.graph.dimMergeCommits setting to specify whether to dim (deemphasize) merge commit rows
    • Adds a gitlens.graph.scrollRowPadding setting to specify the number of rows from the edge at which the graph will scroll when using keyboard or search to change the selected row

Changed

  • In the Commit Graph, increases the time to highlight associated rows when hovering over a branch to 1s
  • Removes the status bar from the Commit Graph as it was replaced by the new header bar

Fixed

  • Fixes #2394 – Work in progress file diff compares working tree with working tree, instead of working tree with head
  • Fixes #2207 – Error when trying to push individual commit
  • Fixes #2301 – Create Worktree button doesn’t work in certain cases
  • Fixes #2382 – commits disappearing from commit details view when they shouldn’t
  • Fixes #2318 – GitLens need to login again after VS Code insiders upgrade every day
  • Fixes #2377 – Missing Azure Devops Icon
  • Fixes #2380 – Autolink fails with curly braces
  • Fixes #2362 – Visual File History becomes unavailable when the workspace contains private repo
  • Fixes #2381 – can’t use scrollbar in ‘Commit Graph’ view
  • Fixes an issue where focusout hides toolbar actions for the graph
  • Fixes an issue where Switch to Another Branch… doesn’t work in the Graph editor toolbar
  • Fixes graph issue with row highlighting/dimming sticking when the graph loses focus
  • Fixes graph issue with branches remaining hovered/extended when the mouse leaves the graph

Version 13.1

Thursday, November 17th, 2022

With GitLens 13, we released the power of GitLens+ features like the Commit Graph, Visual File History, and Worktrees to ALL users on local and public repos. No account required. Learn more about the changes happening with GitLens in this article.

Commit Graph Enhancements

Search History

Find what you seek with ease! Quickly navigate through your search history by using the UP⇧ or DOWN⇩ arrow keys.

New Search Filter @me

Want to see only your commits? Search For @me to highlight only your commits.

Faster Interactive Rebase Editor

With GitLens 13.1, we overhauled the Interactive Rebase Editor. It is now dramatically faster, especially for large rebases. We also streamlined the user experience with a persistent header and footer to ensure you always have important context visible and can quickly start or abort the rebase. Also, anytime the commit author and committer are different, you will see both of their avatars.

Commit Details View Usage

Need additional details to complete your rebase more efficiently? Now, as you navigate commits, we show the selected commit details in the Commit Details view.

Commit Details View Improvements

Custom Autolinks

Custom and basic provider-based autolinks are now shown in the Autolinks section.

Customizable Settings

You can now customize the Commit Details view from the GitLens Settings editor to personalize how it looks and behaves so you can focus on the most important details.

Terminal Links Can Use the Commit Details View

Terminal Links for commits in VS Code’s integrated terminal now use the Commit Details view to provide rich details about the selected commit.

GitLens Home View Updates

Keeping a home tidy is important! We’ve streamlined the Home view to make it even easier to get started with GitLens, learn about its features, and how to personalize your experience.

Added

  • Adds Commit Graph enhancements
    • Adds the ability to set keyboard shortcuts to commits and stashes on the Commit Graph — closes #2345 – Keyboard shortcuts can be applied to many of the gitlens.graph.* commands and should use gitlens:webview:graph:focus && !gitlens:webview:graph:inputFocus for their “When Expression” to only apply when the Commit Graph is focused – For example, add the following to your keybindings.json to allow Ctrl+C to copy the selected commit’s SHA to the clipboard
      {
      “key”: “ctrl+c”,
      “command”: “gitlens.graph.copySha”,
      “when”: “gitlens:webview:graph:focus && !gitlens:webview:graph:inputFocus”
      }
  • Automatically selects the HEAD commit in the Commit Graph when switching branches
  • Improves performance of updating the Commit Graph when the repository changes
  • Improves performance by avoiding unnecessary updates to the Commit Details view when selection changes
  • Adds a @me search filter to the search box
  • Adds history navigation to the search box in the Commit Graph
    • When the search field is focused, use the up arrow and down arrow to navigate through any previous searches that yielded results
    • Adds ability to reset to any commit in the Commit Graph and GitLens views — closes #2326
  • Adds Interactive Rebase Editor performance and UX improvements
    • Changes the header and footer to always be visible
    • Shows the Commit Details view on commit selection
    • Adds a gitlens.rebaseEditor.showDetailsView setting to specify when to show the Commit Details view for the selected row in the Interactive Rebase Editor
    • Adds full (multiline) commit message
    • Adds the f fixup shortcut key to UI
    • Consolidates the UI for author and committer information into a stack of avatars
    • Adds emoji support for commit messages — closes #1789
    • Ensures that large rebases show rich commit details
  • Adds Commit Details view improvements
    • Adds custom and non-rich integration-based autolinks and improves autolink display
    • Improves performance by avoiding unnecessary updates
    • Avoids “pinning” commits by default when opened from the Commit Graph, Visual File History, quick picks, etc
    • Adds a Open in Commit Graph button even when showing uncommitted changes
  • Adds new sections and settings to the GitLens Interactive Settings
    • Adds a new Commit Details view section
    • Adds a new Terminal Links section
    • Adds autolink configuration to the Hovers section
  • Adds a @me search filter to commit search in the Search & Compare view and quick pick
  • Adds product usage telemetry
    • Honors the overall VS Code telemetry settings and add a gitlens.telemetry.enabled setting opt-out specifically for GitLens

Changed

  • Changes the Home view to always be available and polishes the experience
  • Changes SHA terminal links to use the Commit Details view — closes #2320
    • Adds a gitlens.terminalLinks.showDetailsView setting to specify whether to show the Commit Details view when clicking on a commit link
  • Changes to uses VS Code as Git’s core.editor for terminal run commands — closes #2134 thanks to PR #2135 by Nafiur Rahman Khadem @ShafinKhadem
    • Adds a gitlens.terminal.overrideGitEditor setting to specify whether to use VS Code as Git’s core.editor for GitLens terminal commands
  • Polishes webview (Commit Graph, Interactive Rebase Editor, etc) scroll bars to match VS Code’s style and behavior

Fixed

  • Fixes #2339 – Commit details “Autolinks” group shows wrong count
  • Fixes #2346 – Multiple cursors on the same line duplicate inline annotations; thanks to PR #2347 by Yonatan Greenfeld @YonatanGreenfeld
  • Fixes #2344 – copying abbreviated commit SHAs is not working
  • Fixes #2342 – Local remotes are incorrectly treated as private
  • Fixes #2052 – Interactive Rebase fails to start when using xonsh shell due to command quoting
  • Fixes #2141 – GitLens’ rebase UI randomly fails loading interactive rebase when performed outside of VSC
  • Fixes #1732 – Phantom rebase-merge directory (rm -rf “.git/rebase-merge”)
  • Fixes #1652 – Closing interactive rebase editor after “git rebase –edit” aborts rebase-in-progress
  • Fixes #1549 – Fetch does not work when local branch name differs from remote branch name
  • Fixes #2292 – Push button in BranchTrackingStatusNode of non-current branch does not trigger “Push force”
  • Fixes #1488 – Open Folder History not working with non-English language pack
  • Fixes #2303 – “Googlesource” gerrit only supports two levels of domain — thanks to PR #2304 by Matt Buckley @Mattadore
  • Fixes #2315 – Commit details secondary side bar banner doesn’t stay dismissed
  • Fixes #2329 – Remember UI settings in Commit Details panel
  • Fixes #1606 – Adjusts capitalization of “URL” — thanks to PR #2341 by Dave Nicolson @dnicolson
  • Fixes issue where we weren’t honoring the default gravatar style (gitlens.defaultGravatarsStyle) in certain cases
  • Fixes graph issue where stashes are sometimes assigned the wrong column
  • Fixes graph issue with commit rows being incorrectly hidden in some cases
  • Fixes graph issue with merge commits not being hidden correctly in some cases
  • Fixes some graph issues with hover on branch/tag labels

Version 13.0

Monday, October 17th, 2022

Find what you seek.

✨GitLens+ Features for All on Local & Public Repos

With GitLens 13.0, we are excited to bring the power of GitLens+ features like the Commit Graph, Visual File History, and Worktrees to ALL users on local and public repos. No account required. Learn more about the changes happening with GitLens in this article.

Here’s how to get started with each of the GitLens+ features with your local or public repos:

✨Commit Graph – Now out of Preview!

We’re delighted to announce that the Commit Graph is out of Preview, and is full featured! This means you may now interact with the Commit Graph directly and take actions like:

  • Interact with branches, commits, tags and more with right-click context menus
  • Double click a branch to checkout a branch
  • Search and filter for commits
  • Get information about Pull Requests

Full context menu support

Interact with your branches, commits, and more! Context menus are now available when you right click on any branch, tag, commit, or author in the Commit Graph. You may even interact with the Commit Graph column headers to the author, date or SHA columns. So much power!

Context menu actions include but are not limited to:

  • Switch to Branch
  • Revert Commit
  • Switch to Commit
  • Create Branch
  • Merge
  • Rebase
  • Create Worktree
  • Create Pull Request

Rich commit search

Find exactly what you are looking for with the rich search on the powerful new Commit Graph.

Whether searching for a specific commit, message, author, a changed file or files, or even a specific code change, the Commit Graph will highlight matching results across your entire repository. Use shortcut keys or the up/down arrows on the search bar to navigate the search results; F3 (also Cmd+G on macOS) goes to the next result from your selection while Shift+F3 ( also Shift+Cmd+G on macOS) goes to the previous. Additionally you can quickly jump to the first or last result, by holding Shift while clicking on the up/down arrows respectively – to make it easy to see when a file or change was introduced into the codebase.

Once you type search filtering criteria, use the arrow icons to move through each result.

PR information in form of icon

Wait, which branch has that PR?

If connected to one of the rich integrations with GitHub or GitLab, the Commit Graph will display a PR icon for any branch currently in PR. Right-click on the PR icon to open the PR on the GitHub or GitLab, or copy the URL.

Hiding remotes, branches or tags

Need to focus and have too many remotes or just want to curate how much is shown in your Commit Graph? Now you can hide entire remotes, or specific branches and tags. Hover over any branch or tag to access the “Hide” button or right-click to hide the whole remote, or just the local or remote branch, to help focus your Commit Graph.

All new home view

It’s a homecoming! Our GitLens home view has a new look, with quick links to our Getting Started guides, Integrations, Trial info, and Feature spotlights.

List or tree view in Commit Details View

The Commit Details View, which gives you contextual change info about your code, got a new toggle for List and Tree view.

To open the Commit Details view, open the command palette using Cmd+Shift+P and type: Show Commit Details view or navigate to the Commit Details view in the Side Bar.

Change Log

Added

  • ✨ All GitLens+ features on public and local repos are now available to everyone — no account required!
    • We want to bring the power of GitLens+ features to more people without any gates.
  • ✨ Commit Graph is out of preview!
    • Rich search features to find exactly what you’re looking for:
    • Powerful filters to search by commit, message, author, a changed file or files, or even a specific code change
    • Searches look at ALL commits in a repository, not just what’s shown in the graph
    • PR support for connected rich integrations (GitHub/GitLab)
    • Contextual right-click menus with popular actions for commits, branches, tags, and authors
    • Personalization of your graph experience
    • Show and hide branches and columns
    • Settings UI for easy fine-grain control over advanced settings
  • Adds View as Tree option for changed files in the Commit Details view
  • Adds an Open in Commit Graph action to the hovers and commit quick pick menus

Changed

  • Updates the Home View with all new design and content
  • Changes the Show Commit action in the hovers to Show Details and opens the Commit Details view

Fixed

  • Fixes #2203 – Autolinks missing under commit details
  • Fixes #2230 – j and k are inverted in ascending rebase order
  • Fixes #2195 – Cannot open new files from commit details
  • Fixes Commit Details view showing incorrect diffs for certain commits
  • Fixes Commit Details view showing incorrect actions for uncommitted changes
  • Fixes prioritization of multiple PRs associated with the same commit to choose a merged PR over others
  • Fixes Graph not showing account banners when access is not allowed and trial banners were previously dismissed

Version 12.2

Tuesday, August 30th, 2022

The new Commit Graph 🎨 in GitLens 12.2 will fix all your commitment problems…in your code 🥁 👩‍💻

✨Commit Graph – Preview

Users may now view the Commit Graph of their repository through GitLens.

This beloved feature from GitKraken Client helps visualize your repo commit history and give you information about branches, commits, and collaborators all in one view — making it easier to see contributions and help you make faster, more informed decisions.

To open the Commit Graph, open the command palette using the keyboard shortcut Cmd Shift P and type Show Commit Graph.

This will open a new tab and render your current repo’s commit history, where you may scroll through your history and resize any of the columns widths.

You may also access the Commit Graph by clicking this graph icon from the Source Control view in the Sidebar or Status Bar.

The Commit Graph is available to all users working on public repositories, and requires no account. Additionally, users with a paid GitLens+ subscription can use the Commit Graph with private repos.

For those on vscode.dev or github.dev, this also means you can open the Commit Graph on a web browser.

The Commit Graph is in Preview mode, and we’d love to hear your feedback in the Commit Graph discussion on GitHub.

Commit Details View

GitLens 12.2 also ships with a Commit Details View, which gives you contextual change info about your code.

To open the Commit Details View, open the command palette using Cmd Shift P and this time type: Show Commit Details View or navigate to the Commit Details View in the Sidebar.

The Commit Details View updates as you move your cursor throughout the file with information about the commit that modified that line of code. Get quick information about the commit author, commit ID, links to Pull Requests, files modified in the commit, and more.

Click on a file to open the diff, and see what changed. You may also hover over the file name to access options like Open File, Open Changes with Working File, and Open Remote.

✨ GitHub Enterprise Integration

Next, GitLens+ now offers a richer integration with GitHub Enterprise.

Once authenticated, GitLens will enrich GitHub autolinks in the hovers. You’ll see your GitHub Enterprise avatar, links to related pull requests, along with a footnote of the pull request or issue details.

You’ll see similar details from the Sidebar views for any commit or branch associated with a pull request or issue.

✨ Single Sign On

Single Sign On is here, providing GitLens+ users with a more secure sign in method!

Requirements and configuration

Your GitKraken account may now initiate an Oauth authentication flow with the following supported Identity Providers (IdPs):

  • Azure Active Directory
  • Okta
  • Google Identity Platform
  • Ping Identity

Please note that your IdP will first need to be configured before setting up the connection in your GitKraken account. For assistance, please contact your IdP administrator or consult the IdP documentation for help.

Additional requirements: – Configurable only by GitKraken Owner or Admin of an organization – Subscribed to either the Teams or Enterprise plan

Documentation: How to set up SSO in GitKraken

Signing in with SSO

GitLens+ users should see a new option to Sign in with SSO from the login screen.

After clicking Sign in with SSO, the SSO form will open and ask for an email address to use for SSO login. The app will then check the email and determine whether the email address belongs to a single IdP for SSO. When the email address is successfully identified, the user will be taken to that IdP to login.

Once authenticated, the user may use GitLens+

More improvements

Stash naming defaults

When applying or popping a stash, GitLens will default the commit message input to the stash message.

And when stashing changes, the stash name will now default to any entry in the commit message input.

Stats in comparisons

There are now stats about additions & deletions in files nodes in comparisons. To get these stats, navigate to the Search & Compare view in the Sidebar and create a comparison between commits.

Search for text in Interactive Rebase Editor

And users may now search for text on the Interactive Rebase Editor using Ctrl F.

Change Log

Added

  • Adds Commit Graph
  • Adds Commit Details View
  • Adds rich integration with GitHub Enterprise — closes #1210
    • Adds associated pull request to line annotations and hovers
      Pull requests on line annotation and hovers
    • Adds associated pull request to status bar blame
      Pull requests on status bar
    • Adds GitHub avatars
    • Adds associated pull requests to branches and commits in GitLens views
    • Adds rich autolinks for GitHub issues and merge requests, including titles, status, and authors
    • Adds rich support to Autolinked Issues and Pull Requests within comparisons to list autolinked GitHub issues and merge requests in commit messages
  • Adds new stash behaviors to use the Source Control (commit message) input box — closes #2081
    • When a stash is applied or popped and the Source Control input is empty, we will now update the Source Control input to the stash message
    • When stashing changes and the Source Control input is not empty, we will now default the stash message input to the Source Control input value
  • Adds the ability to search (Ctrl+F) for text on the Interactive Rebase Editor — closes #2050
  • Adds stats (additions & deletions) to files nodes in comparisons — closes #2078 thanks to help via PR #2079 by Nafiur Rahman Khadem (@ShafinKhadem)
  • Adds the ability to uniquely format uncommitted changes for the current line blame annotations — closes #1987
    • Adds a gitlens.currentLine.uncommittedChangesFormat setting to specify the uncommitted changes format of the current line blame annotation. NOTE: Setting this to an empty string will disable current line blame annotations for uncommitted changes
  • Adds variable expansion support to the gitlens.worktrees.defaultLocation setting
    • ${userHome} — the path of the user’s home folder
    • ${workspaceFolder} — the path of the folder opened in VS Code containing the specified repository
    • ${workspaceFolderBasename} — the name of the folder opened in VS Code containing the specified repository without any slashes (/)
  • Adds owner avatars to remotes in the Remotes view for GitHub remotes

Changed

  • Greatly improves performance of many view interactions when connected to a rich integration and pull request details are enabled, including:
    • Showing and refreshing the Commits view
    • Expanding commits, branches, and worktrees
  • Remembers chosen filter on files nodes in comparisons when refreshing
  • Changes display of filtered state of files nodes in comparisons
  • Improves diff stat parsing performance and reduced memory usage
  • Disallows comparisons with the working tree on the right-side (left-side still works as expected) and disables swapping
  • Uses VS Code as core.editor in rebase — closes #2084 thanks to PR #2085 by Nafiur Rahman Khadem (@ShafinKhadem)

Fixed

  • Fixes #2156 – Reduce extension package size
  • Fixes #2136 – Search & Compare quickpick shouldn’t select the mode text when opening
  • Fixes #1896 – Cannot read property ‘fsPath’ of undefined
  • Fixes #1550 – Push button in commit widget does not trigger “Push force” when ALT is pressed.
  • Fixes #1991 – Git lens status bar entry has an incomprehensible accessibility label
  • Fixes #2125 – “git log” command in version 12.x is very slow
  • Fixes #2121 – Typo in GitLens header — thanks to PR #2122 by Chase Knowlden (@ChaseKnowlden)
  • Fixes #2082 – GitLens Home view unreadable in certain themes
  • Fixes #2070 – Quoted HTML / JSX syntax is not escaped correctly
  • Fixes #2069 – Heatmap – incorrect behavior of gitlens.heatmap.fadeLines with gitlens.heatmap.ageThreshold
  • Fixes an issue where choosing “Hide Current Branch Pull Request” from the Commits view overflow menu wouldn’t hide the PR node
  • Fixes an issue where stashes without a message aren’t displayed properly
  • Fixes an issue where the Stashes view empty state isn’t displayed properly when there are no stashes
  • Fixes typos via PR #2086 by stampyzfanz (@stampyzfanz), and PR #2043, PR #2040, PR #2042 by jogo- (@jogo-)
Have feedback about this article? Did we miss something? Let us know!
On this page