Added
-
Adds all-new views side bar views
-
Moves all GitLens views to the Source Control side bar by default. You can move them back to the GitLens side bar via the Set Views Layout (
gitlens.setViewsLayout
) command or individually via drag and drop -
Commits view — visualize, explore, and manage Git commits
- Adds an indicator icon (up arrow) to unpublished (unpushed) commits
-
Branches view — visualize, explore, and manage Git branches
-
Remotes view — visualize, explore, and manage Git remotes and remote branches
-
Stashes view — visualize, explore, and manage Git stashes
-
Tags view — visualize, explore, and manage Git tags
-
Contributors view — visualize, navigate, and explore contributors
- Moves the current user to be first and adds a
(you)
suffix
- Moves the current user to be first and adds a
-
Search & Compare view — search and explore commit histories by message, author, files, id, etc, or visualize comparisons between branches, tags, commits, and more
- Replaces the Search Commits and Compare Commits views
- Adds persistence (pinning) for both searches and comparisons
- Adds ability to edit existing searches
-
Disables the Repositories view by default, as it has been superseded by many new views. You can re-enable it by setting
"gitlens.views.repositories.enabled": true
or via the GitLens Interactive Settings -
Integrates line history into the File History view
- Adds a new Toggle History Mode command to toggle between showing file or line history
- Adds an indicator icon (up arrow) to unpublished (unpushed) commits
- Adds support for showing history across all branches via the Toggle Filter menu command — closes #974
- Adds staged changes
-
Welcome view — quickly setup GitLens to meet your needs (for first time users only)
-
-
Adds a user-friendly interactive rebase editor to easily configure an interactive rebase session
-
Adds terminal links —
ctrl+click
on autolinks in the integrated terminal to quickly jump to more details for commits, branches, tags, and more -
Adds rich integration with GitHub
-
Adds GitHub avatar support!
-
Adds associated pull request to line annotations and hovers
-
Adds associated pull request to status bar blame
-
Adds associated pull requests to branches and commits in the GitLens views
-
Adds autolinks for GitHub issues and pull requests, including titles, status, and authors
-
-
Adds a new and improved Gutter Heatmap file annotations, via the Toggle File Heatmap Annotations command (
gitlens.toggleFileHeatmap
)- Displays the heatmap in the gutter for a cleaner look and avoids any code jumping
- Adds improved heatmap colorization for better clarity of old and new code
- Adds the hot/cold age threshold to the GitLens Interactive Settings
-
Adds a new and improved Gutter Changes file annotations, via the Toggle File Changes Annotations command (
gitlens.toggleFileChanges
) — closes #396- Provides indicators of local changes, if any, or recent commit changes, and distinguishes between added, changed, and removed lines
- Similar to the built-in Git gutter changes for un-staged changes, but shows all local (un-pushed) changes
- Shows a changes hover with the full set of changes (diff hunk) and even with unsaved changes
-
Adds many refinements to the Git Command Palette (previously Git Commands), and adds new commands
- Adds many more options to existing commands
- Adds improved titles for better clarity, context, and flow
- Adds a new history (log) command to show the commit history of a branch or tag
- Adds a Reveal in Side Bar button to the quick pick menu toolbar
- Adds keyboard navigation
right arrow
— reveals the selected branch in the Branches or Remotes view (or Repositories view, if enabled), if there is no text in the quick pick menualt+right arrow
,ctrl+right arrow
,cmd+right arrow
(macOS) — reveals the selected branch in the Branches or Remotes view
- Adds a new show command to show the details of a commit
- Adds a Reveal in Side Bar button to the quick pick menu toolbar
- Adds keyboard navigation
right arrow
— searches for the selected commit and shows the results in the Search Commits view, if there is no text in the quick pick menualt+right arrow
— searches for the selected commit and shows the results in the Search Commits viewctrl+right arrow
,cmd+right arrow
(macOS) — reveals the selected commit in the Commits view (or Repositories view, if enabled)
- Adds a new status command to show the current respository status
- Adds a new Delete Branch & Remote and Force Delete Branch & Remote options to the branch delete command — to more easily delete branches with tracking branches
- Adds ability pull (fetch) a specific branch(es) to the pull command — closes #873
- Adds a new Publish Branch option to the push command
- Adds ability to push a single branch to the push command
- Adds support for honoring the
git.useForcePushWithLease
setting on the push command - Adds a new Soft Reset (
--soft
) option to the reset command
-
Adds improved autolinks support
- Adds a new
alphanumeric
flag to autolinks — closes #946 - Adds autolink support in plain text (as footnotes)
- Allows autolinks inside parentheses and square brackets
- Adds a new
-
Adds improved co-author support
- Provides an updatable quick pick of co-authors
- Adds the Add Co-authors (
gitlens.addAuthors
) command to the Source Control context menu - Adds an option to show or hide the Add Co-authors command on the Source Control context menu to the Menus & Toolbars section of the GitLens Interactive Settings
-
Adds many new commands
- Open File from Remote (
gitlens.openFileFromRemote
) command — opens the local file from a remote file url - Set Views Layout (
gitlens.setViewsLayout
) command — quickly switch between showing GitLens views in GitLens sidebar (default) and the Source Control sidebar - Adds a Switch to Another Branch (
gitlens.views.switchToAnotherBranch
) command — to quickly switch the current branch - Copy Remote Commit Url command (
gitlens.copyRemoteCommitUrl
) — copies the url of the current line commit on the remote provider - Copy Remote Branch Url command (
gitlens.copyRemoteBranchUrl
) — copies the url of a branch on the remote provider - Copy Remote Branches Url command (
gitlens.copyRemoteBranchesUrl
) — copies the url of the branches on the remote provider - Open Comparison on Remote command (
gitlens.openComparisonOnRemote
) — opens the comparison on the remote provider - Copy Remote Comparison Url command (
gitlens.copyRemoteComparisonUrl
) — copies the url of the comparison on the remote provider - Open Pull Request command (
gitlens.openPullRequestOnRemote
) — opens the pull request on the remote provider - Copy Pull Request Url command (
gitlens.copyRemotePullRequestUrl
) — copies the url of the pull request on the remote provider - Copy Remote Repository Url command (
gitlens.copyRemoteRepositoryUrl
) — copies the url of the repository on the remote provider
- Open File from Remote (
-
Adds alternative
alt+click
commands for many of the Open * on Remote commands to alternatively copy the url to the clipboard -
Adds an Open Commit on Remote command (with an Copy Remote Commit Url
alt+click
command) to commits in the VS Code Timeline view -
Adds ability to set the default remote from any of the Open * on Remote command quick pick menus
-
Adds Git Code Lens to markdown headers
-
Adds new Git Code Lens options to disable the click actions on both the recent change and authors code lens — closes #989 thanks to PR #1009 by Abdulrahman (Abdu) Assabri (@abdusabri)
-
Adds per-language customizations to the
gitlens.codeLens.scopes
andgitlens.codeLens.symbolScopes
settings — closes #977 -
Adds new click behavior for changed files in GitLens views to open a diff of all contained changes
-
Adds a new
gitlens.hovers.avatarSize
setting to customize the size of avatars shown in hovers- Increases the default avatar size in hovers from 16px to 32px
-
Adds Hide Avatars or Show Avatars menu command to many GitLens views to hide or show avatars
-
Adds Hide Date Markers or Show Date Markers menu command to many GitLens views to hide or show relative date markers
-
Adds real-time preview when editing format strings in the GitLens Interactive Settings
-
Adds a new commit format tokens:
${authorNotYou}
,${agoOrDateShort}
,${authorAgoOrDateShort}
,${committerAgoOrDateShort}
-
Adds synchronized storage to avoid opening the Welcome page or showing a What's New notification on new machines when Settings Sync is enabled
-
Adds new Welcome and Open Settings menu commands to the GitLens gear menu in the Extensions sidebar — closes #952 & #953 thanks to PR #992 by Zeeshan Adnan (@zeeshanadnan)
-
Adds a new HEAD choice to the compare quick pick menu — closes #927
-
Adds support for
.gitattributes
text conversion filters — closes #866 thanks to PR #1052 by Martin Campbell (@martin-css) -
Adds week(s) ago to relative time formatting
-
Adds a limit of 5000 commits to the Load All command in GitLens views
-
Adds a Clear command to the branch comparison tool in GitLens views
-
Adds compact mode for showing branch and tag tips on commits in GitLens views
-
Adds Copy SHA command to branches and tags in GitLens views
Changed
- Changes all comparisons results to be split into ahead and behind groups
- Changes Git Code Lens to be less intrusive when they are unavailable because of unsaved changes, via new defaults for the
gitlens.strings.codeLens.unsavedChanges.*
settings - Refines all of the GitLens contributed menus to reduce noise and improve usability
- Changes to use VS Code's built-in icons (codicons) where possible — closes #985
- Changes to use codicons in hovers — closes #954
- Changes revision navigation icons to better match VS Code
- Changes all the Open * on Remote command icons to use the globe codicon
- Changes the comparison icons in GitLens views
- Changes the default blame annotation format to show 50 characters (instead of 40)
- Changes the relative date markers in GitLens views to be less prominent, and avoids showing the marker if it is first item
- Changes commit quick pick menu commands to align with commit context menu commands
- Changes the Open Settings and Welcome pages to open beside the active editor
- Changes the default sorting of branches so that main, master, and develop are first
- Changes the sorting of branches in the Git Commands Palette and other quick pick menus to be by date descending
- Changes the default sorting of remotes so that origin is first — closes #924 — thanks to PR #925 by Connor Peet (@connor4312)
- Changes the default sorting of tags to be by date descending
- Changes to limit
scm/resourceGroup/context
andscm/resourceState/context
menu contributions - Changes to support latest emojis in commit messages
- Improves VS Code startup performance by using the new
onStartupFinished
activation event - Improves the performance of the Details hover
- Improves the performance of loading Contributors in the Contributors and Repositories views
- Improves the performance and experience when opening multiple files or revisions
- Improves the performance of the file system watching for repository changes (ignores
.gitignored
files) - Moves the avatars in the Gutter Blame file annotations to be part of the annotations rather than in the gutter itself
- Renames Show More to Load more in GitLens views
- Renames Show Commit Details command to Show Commit
- Replaces Push to Commit (via Terminal) command with a new Push to Commit command
- Deprecates the Line History view, as it has been integrated into the File History view. While it will likely be removed in a future version, you can be re-enable it by setting
"gitlens.views.lineHistory.enabled": true
- Deprecates the
gitlens.codeLens.scopesByLanguage
setting, use per-languagegitlens.codeLens.scopes
andgitlens.codeLens.symbolScopes
settings instead - Deprecates the
gitlens.gitCommands.search.showResultsInView
setting as it has been renamed togitlens.gitCommands.search.showResultsInSideBar
- Deprecates the
gitlens.views.commitFileFormat
setting, usegitlens.views.formats.files.label
instead - Deprecates the
gitlens.views.commitFileDescriptionFormat
setting, usegitlens.views.formats.files.description
instead - Deprecates the
gitlens.views.commitFormat
setting, usegitlens.views.formats.commits.label
instead - Deprecates the
gitlens.views.commitDescriptionFormat
setting, usegitlens.views.formats.commits.description
instead - Deprecates the
gitlens.views.stashFileFormat
setting, usegitlens.views.formats.files.label
instead - Deprecates the
gitlens.views.stashFileDescriptionFormat
setting, usegitlens.views.formats.files.description
instead - Deprecates the
gitlens.views.stashFormat
setting, usegitlens.views.formats.stashes.label
instead - Deprecates the
gitlens.views.stashDescriptionFormat
setting, usegitlens.views.formats.stashes.description
instead - Deprecates the
gitlens.views.statusFileFormat
setting, usegitlens.views.formats.files.label
instead - Deprecates the
gitlens.views.statusFileDescriptionFormat
setting, usegitlens.views.formats.files.description
instead - Removes the sponsor heart icon from all GitLens views and simplifies the sponsor command
- Removes the useless Collapse All command from the File History view
- Removes the Keep Open toggle button from the Git Command Palette toolbar — the behavior is now automatically determined (unless overridden by the
gitlens.gitCommands.closeOnFocusOut
setting) - Removes
${changes}
token from commit description format by default - Removes the associated commit sha from tag descriptions
- Removes many view visibility (enablement) settings as the control over a views visibility is more easily controlled directly by unchecking the view itself
- Removes the
gitlens.views.repositories.showTrackingBranch
setting as it is now always enabled
Fixed
- Fixes diffs of renamed files in certain cases
- Fixes #1139 - Git crash with v2.29.x
- Fixes typo forcably -> forcibly — thanks to PR #1138 by Andrea Cigana (@ciganandrea)
- Fixes missing empty (non-merge) commits
- Fixes issue with a blank branch name before any commits exist
- Fixes issues with missing repository or file system change events while vs code is unfocused
- Fixes remote url issues with spaces in the filename
- Fixes issue where /HEAD was showing up as a branch
- Fixes issues with revision navigation commands and diff editors
- Fixes show command with single file commits
- Fixes delete of remote branches on the Git Command Palette's branch command
- Fixes Git Command Palette's back tracking in certain cases
- Fixes issue to ensure that dropping a stash drops the correct item even if the view is out of date
- Fixes the Push Stash & Keep Staged option on the Git Command Palette's stash command
- Fixes issues with stashes and untracked files
- Fixes the wrong icon on the Unstage All Changes command
- Fixes issue where a selection change wouldn't always trigger a Line History refresh
- Fixes issues where GitLens' files would not re-open properly on reload
- Fixes Incomplete string escaping or encoding code scan warning — https://github.com/eamodio/vscode-gitlens/security/code-scanning/1
- Fixes Inefficient regular expression code scan warning — https://github.com/eamodio/vscode-gitlens/security/code-scanning/2
- Fixes #1072 - Add whitespace to tree item tooltip — thanks to PR #1073 by Alex (@deadmeu)
- Fixes Git Command Palette's stash drop command not working
- Fixes #1033 - Adopt VS Code's 'asWebviewUri' API
- Fixes issues with Open Changes with Previous Revision and diff editors
- Fixes issues with Open Changes with Working File and diff editors
- Fixes issue with the previous line diff line number being off
- Fixes issues with bogus merge commits that can show up in file histories; now using
--first-parent
for git log with--follow
- Fixes issues with paging git log with merge commits
- Fixes directory compare from waiting for external tool to exit
- Fixes #996 - Rename branch should show existing name highlighted
- Fixes issues with folders that end with a space
- Fixes typo in contributing search tag link — thanks to PR #981 by Guillem (@guillemglez)
- Fixes #970 - Stashes doesn't honor files layout
- Fixes Load more in GitLens views with range notation comparisons
- Fixes
ignoreCase
flag on autolinks - Fixes #951 - Starring branch updates repository view properly — thanks to PR #963 by Zeeshan Adnan (@zeeshanadnan)
- Fixes issues with switch branch command error handling
- Fixes issues with stash command error handling
- Fixes file history issues with copied and deleted files
- Fixes intermittent issues with Reveal Commit in Repopsitories View
- Fixes #910 - "Show Commit in Search Commits View" doesn't work
- Fixes issues with hovers not showing on first editor
- Fixes autolinking with remote providers
- Fixes issues with some settings metadata