Skip to content
Permalink
main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
4690 lines (3354 sloc) 324 KB

Change Log

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

Unreleased

Added

  • Adds new Commit Graph features and improvements
    • Adds a new experimental minimap of commit activity to the Commit Graph
    • Adds the ability to show upstream status (ahead/behind) on local branches with remotes
    • Adds a context menu to the WIP row — closes #2458
    • Adds new settings
      • Adds a gitlens.graph.pullRequests.enabled setting to toggle PR icons — closes #2450
      • Adds a gitlens.graph.showUpstreamStatus setting to toggle upstream indicators on branches
    • Improves tooltips in the graph:
      • Author and avatar tooltips now also show the contributor's email address, if available
      • Date tooltips now always show both the absolute date and relative date
  • Improves the Worktree creation experience
    • Adds a worktrees.openAfterCreate setting to specify how and when to open a worktree after it is created
    • Creates new worktrees from the "main" repo, if already in a worktree
    • Shows the Worktrees view after creating a new worktree
  • Adds a new remote command to the Git Command Palette to add, prune, and remove remotes
  • Adds a Create Worktree for Pull Request via GitLens... context menu command on pull requests in the GitHub Pull Requests and Issues extension's views

Changed

  • 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 #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

13.2.0 - 2022-12-20

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

  • Increases the delay to highlight associated rows when hovering over a branch to 1s in the Commit Graph

Removed

  • 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

13.1.1 - 2022-11-21

Fixed

  • Fixes #2354 - 'GitLens: Compare working three with...' Not able to select branch using keyboard
  • Fixes #2359 - rebase view shows 2 user icons even when they're the same

13.1.0 - 2022-11-17

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

13.0.4 - 2022-11-03

Fixed

  • Fixes #2298 - Commit Graph does not update to current branch correctly
  • Fixes #2300 - extra non-functional toolbar buttons when viewing PR diffs in VSCode web
  • Fixes #2281 - Push and Pull buttons missing from the commits view w/ integrations disabled
  • Fixes #2276 - Search commit by Sha not working in Gitlens side bar
  • Fixes issues with PR uris (scheme: pr) from not working properly, especially with virtual repositories

13.0.3 - 2022-10-20

Added

  • Adds a banner to the Commit Details view to let users know they can move the view to the Secondary Side Bar

Changed

  • Changes the Commit Graph settings for improved clarity and ordering

Fixed

  • Fixes #2271 - Terminal commands should wrap path with quote to deal with path contains space
  • Fixes an issue where the Commit Details view fails to show the full commit message and changed files when following editor lines

13.0.2 - 2022-10-17

Added

  • All GitLens+ features on public and local repos are now available to everyone — no account required!
    • We are excited to bring the power of GitLens+ features to more people without gates
  • Commit Graph is out of preview!
    • Contextual right-click menus with popular actions for commits, branches, tags, and authors
    • Double-click on a branch or tag to quickly switch your working tree to it
    • 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)
    • Significant performance improvements when opening the graph and loading in additional commits
    • Personalization of your graph experience
      • Show and hide remotes, branches, tags, and columns
      • Settings UI for easy fine-grain control over advanced settings
    • And so much more!
  • Adds an all-new GitLens Home view to help you get started with GitLens and GitLens+ features
  • Adds autolinks and improves formatting of the commit message in the Commit Details view
  • Adds View as Tree toggle option for changed files in the Commit Details view
  • Adds an Open in Commit Graph action to branches, commits, stashes, and tags in GitLens views, hovers, and commit quick pick menus
  • Adds a Reveal in Side Bar action to hovers

Changed

  • Changes the Show Commit action in the hovers to Open 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

12.2.2 - 2022-09-06

Fixed

  • Fixes #2177 - Open Changes action unresponsive in Source Control view
  • Fixes #2185 - Commits view files are sometimes not shown when expanding folders
  • Fixes #2180 - Tree files view of commits is broken
  • Fixes #2187 - scm/title commands shown against non-Git SCM providers — thanks to PR #2186 by Matt Seddon (@mattseddon)

12.2.1 - 2022-09-01

Fixed

  • Fixes #2185 - Commits view files are sometimes not shown when expanding folders
  • Fixes #2180 - Tree files view of commits is broken
  • Fixes #2179 - Commit Graph content not displayed
  • Fixes regression with Contributors view not working

12.2.0 - 2022-08-30

Added

  • Adds an all-new Commit Graph, a GitLens+ feature — helps you to easily visualize branch structure and commit history. Not only does it help you verify your changes, but also easily see changes made by others and when Commit Graph illustration
  • Adds a Commit Details view — provides rich details for commits and stashes
    • Contextually updates as you navigate:
      • lines in the text editor
      • commits in the Commit Graph, Visual File History, or Commits view
      • stashes in the Stashes view
    • Alternatively, you can search for or choose a commit directly from the 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 (/ or 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 #2017 - Gitlens+ pro keeps signing out
  • Fixes #1935 - Constant prompt "Your github credentials do not have the required access"
  • Fixes #2067 - Your 'github' credentials are either invalid or expired
  • Fixes #2167 - Rollup diff between working tree and fetched remote doesn't show changes
  • Fixes #2166 - Don't always prompt for GitHub authentication on virtual repositories
  • 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-)

12.1.2 - 2022-07-12

Fixed

  • Fixes #2048 - Gitlens not loading in vscode.dev

12.1.1 - 2022-06-16

Added

  • Adds getting started tutorial video to the Welcome, Get Started walkthrough, GitLens Home view, and README

Fixed

  • Fixes #2037 - Autolinks can end up getting saved with invalid (cached) properties

12.1.0 - 2022-06-14

Added

  • Adds rich integration with GitLab and GitLab self-managed instances — closes #1236
    • 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 GitLab avatars
    • Adds associated pull requests to branches and commits in GitLens views
    • Adds rich autolinks for GitLab issues and merge requests, including titles, status, and authors
    • Adds rich support to Autolinked Issues and Pull Requests within comparisons to list autolinked GitLab issues and merge requests in commit messages
    • Additional thanks to Kevin Paxton (kpaxton) for help and contributions on this feature
  • Adds editor line highlighting and code fading (dimming) to the File Heatmap annotations to make it easier to tell recent vs old lines of code
    • Adds a line option to gitlens.heatmap.locations setting to specify whether to add a line highlight to the File Heatmap annotations
    • Adds a gitlens.heatmap.fadeLines setting to specify whether to fade out older lines when showing the File Heatmap annotations
  • Adds editor line highlighting to the File Changes annotations for easier discovery of the added or changed lines
    • Adds a line option to gitlens.changes.locations setting to specify whether to add a line highlight to the File Changes annotations
  • Adds "vanilla" Gerrit remote provider support — closes #1953 thanks to PR #1954 by Felipe Santos (@felipecrs)
  • Adds "Oldest first" toggle to Interactive Rebase — closes #1190
    • Adds a gitlens.rebaseEditor.ordering setting to specify how Git commits are displayed in the Interactive Rebase Editor
  • Adds new and improved Autolink support
    • Adds an Autolinks section in the GitLens Settings Editor to visually add and update autolink entries — closes #1315
    • Adds improved support to Autolinked Issues and Pull Requests within comparisons to list autolinked issues in commit messages
      • You can now see all autolinks found in the commits in the comparison regardless of whether it's a provider-based autolink or a custom (user-provided) autolink
  • Adds Open Current Branch on Remote to the Command Palette — closes #1718

Changed

  • Improves how stashes are shown in the Stashes view by separating the associated branch from the stash message — closes #1523
  • Changes previous Gerrit remote support to Google Source remote support — thanks to PR #1954 by Felipe Santos (@felipecrs)
  • Renames "Gutter Blame" annotations to "File Blame"
  • Renames "Gutter Changes" annotations to "File Changes"
  • Renames "Gutter Heatmap" annotations to "File Heatmap"

Fixed

  • Fixes #2033 - Diffing, applying, and restoring untracked files in a stash doesn't work
  • Fixes #2028 - Branch names with special characters '<' also causes errors on the command line — thanks to PR #2030 by mcy-kylin (@mcy-kylin)
  • Fixes #2028 - Branch names with special characters like ';$|>' causes errors on the command line (terminal executed git commands)
  • Fixes #2021 - GitLab remote provider uses legacy routes — thanks to PR #2022 by Brian Williams (@Brcrwilliams)
  • Fixes #1998 - Settings: time format reads 'Example date' instead of 'Example time' — thanks to PR #1999 by Barney Carroll (@barneycarroll)
  • Fixes #2012 - 'Gitlens: Open Changes with Revision...' results in error
  • Fixes #2014 - '#' encoded incorrectly
  • Fixes #1787 - Remove '-review' from Gerrit Remote reviewDomain() — thanks to PR #1954 by Felipe Santos (@felipecrs)
  • Fixes #1902 - Support replacing mirror/replica domain with main domain for remote provider — thanks to PR #1954 by Felipe Santos (@felipecrs)

[12.0.7] - 2022-05-25

Fixed

  • Fixes #1979 - GitLens stopped working in v12.0.0 and later
  • Fixes #1882 - Blame annotations not showing anymore after update
  • Fixes #1776 - Can't follow symlinks
  • Fixes #2000 - File Changes annotations fail to display in certain cases
  • Fixes #1936 - Broken repositories view
  • Fixes an issue where commit messages in views incorrectly had ellipsis at the end
  • Fixes an issue where clicking on tokens on the Settings editor popup wouldn't add the token into the input

12.0.6 - 2022-04-12

Fixed

  • Fixes #1928 - Unable to get absolute uri between ex.txt and z:; Base path 'z:' must be an absolute path — thanks to PR #1929 by Ross Smith II (@rasa)
  • Fixes #1932 - Pull request autolink doesn't work for Bitbucket Server 7 — thanks to PR #1933 by Sam Martin (@smartinio)
  • Fixes #1938 - Git CodeLens causes line jumping on new virtual files
  • Fixes #1925 - Branches from remotes outside the repo aren't showing associated pull requests (for connected remotes)
  • Fixes #1920 - Can't view tags on torvalds/linux
  • Fixes #1923 - View titles fail to update properly when number of "opened" repos changes
  • Fixes smooth scrolling and TOC jumping issues on the GitLens Interactive Settings

12.0.5 - 2022-03-17

Changed

  • Changes the current line blame hover to show at the cursor, rather than the start of the line, when showing the hover over the whole line (e.g. line & annotation)
  • Changes Gutter Changes file annotations to be theme-aware
  • Changes to honor the new(ish) git.repositoryScanMaxDepth setting if the gitlens.advanced.repositorySearchDepth setting isn't specified

Fixed

  • Fixes #1909 - Should still "detect" repos directly in the workspace folder(s) even if git.autoRepositoryDetection is false
  • Fixes #1829 - Reduce re-rendering by disabling animation in blame info in the status bar
  • Fixes #1864 - Worktrees fail to load in working path with spaces
  • Fixes #1881 - Worktrees icon is very small
  • Fixes #1898 - Hovers display old Gravatar — thanks to PR #1899 by Leo Dan Peña (@amouxaden)
  • Fixes an issue where the Gutter Changes file annotations could be rendered on the wrong lines in certain cases

12.0.4 - 2022-03-10

Added

  • Adds ability to paste in an authorization URL to complete a GitLens+ sign in

Fixed

  • Fixes #1888 - Gitlens breaks vscode auto repository detection settings
  • Fixes an issue where the Visual File History wasn't correctly opening the commit file details quick pick menu
  • Fixes an issue where the Open Visual File History of Active File command wasn't showing in the Command Palette

12.0.3 - 2022-03-10

Fixed

  • Fixes #1897 - Repeated GitHub errors when offline

12.0.2 - 2022-03-09

Added

  • Adds proxy support to network requests
    • By default, uses a proxy configuration based on VS Code settings or OS configuration
    • Adds a gitlens.proxy setting to specify a GitLens specific proxy configuration

Changed

  • Changes local repositories to be considered public rather than private for GitLens+ features (so only a free account would be required)
  • Changes relative dates >= 1 year but < 2 years to be shown in months for better granularity - related to #1546

Fixed

  • Fixes #1895 - Honor defaultDateShortFormat setting on Visual File History
  • Fixes #1890 - can no longer see untracked files in stashes

12.0.1 - 2022-03-03

Added

  • Adds gitlens.defaultDateFormat setting to specify the locale, a BCP 47 language tag, to use for date formatting

Changed

  • Removes dependency on GitKraken Authentication extension
  • Changes date formatting to follow the VS Code language locale by default
  • Changes framing of premium features into GitLens+
  • Changes repository naming to better reflect its folder name, related to #1854

Fixed

  • Fixes #2117 - Gitlens freaks out when I'm off VPN
  • Fixes #1859 - GitLens dates use system locale instead of vscode language setting
  • Fixes #1854 - All repos have the same name
  • Fixes #1866 - Copy SHA and Copy Message don't work from the views (commits, branches, etc)
  • Fixes #1865 - Value shortOffset out of range for Intl.DateTimeFormat options property timeZoneName
  • Fixes #1742 - New file lines keep jumping down
  • Fixes #1846 - Restoring (checkout) a deleted file from a commit doesn't work
  • Fixes #1844 - Autolinked issues aren't properly paged when there are too many commits
  • Fixes #1843 - Compare references doesn't work if you have multiple repos open

12.0.0 - 2022-02-28

Added

  • Adds (preview) VS Code for Web support!

    • Get the power and insights of GitLens for any GitHub repository directly in your browser on vscode.dev or github.dev
  • Introducing GitLens+ features — learn about GitLens+ features

    • GitLens+ adds all-new, completely optional, features that enhance your current GitLens experience when you sign in with a free account. A free GitLens+ account gives you access to these new GitLens+ features on local and public repos, while a paid account allows you to use them on private repos. All other GitLens features will continue to be free without an account, so you won't lose access to any of the GitLens features you know and love, EVER.

    • Visual File History — a visual way to analyze and explore changes to a file

      • The Visual File History allows you to quickly see the evolution of a file, including when changes were made, how large they were, and who made them

        Visual File History view

    • Worktrees — allow multiple branches to be checked-out at once

      • Worktrees allow you to easily work on different branches of a repository simultaneously. You can create multiple working trees, each of which can be opened in individual windows or all together in a single workspace

        Worktrees view

  • Adds a new GitLens Home view — see welcome content, help resources, and subscription information

  • Adds a Get Started with GitLens walkthrough to introduce new (and existing) users to many of the powerful features of GitLens — try it via GitLens: Get Started from the Command Palette

  • Adds a new Autolinked Issues and Pull Requests node to comparisons to list autolinked issues and pull requests in commit messages to quickly see all the issues fixed in a release and more

    • Currently only supported for connected GitHub remote providers
  • Adds the ability to choose a stash when opening or comparing file revisions, via the Open Changes with Revision... & Open File at Revision... commands

  • Adds improved hover information, including status and color-coding, shown on pull requests in the GitLens views

  • Adds a gitlens.codeLens.dateFormat setting to specify how to format absolute dates in the Git CodeLens

  • Adds an easier method to choose a specific commit to the Git Command Palette's merge & rebase commands

  • Adds a new commit format token: ${link}

Changed

  • Completely refactors the internals of GitLens into a new flexible Git provider model to allow GitLens to work on the web and in virtual environments like vscode.dev and github.dev
  • Improves the user experience of the commit details and file details quick pick menus
    • Commands are now grouped and easier to understand and access — thanks to Tyler Leonhardt (@tylerLeonhardt) on the VS Code team for the quick pick API additions
  • Improves performance and reduces latency across many workflows
  • Improves startup performance on previously opened workspaces by remembering details from the last time the workspace was opened
  • Improves performance of the all GitLens webviews, most noticeable on the GitLens settings editor
  • Improves GitLens view refreshing when folders are added or removed from a workspace
  • Changes the icon of the Open Changes action on the hovers to be clearer
  • Changes footnotes in hovers to be above the command bar rather than below
  • Reworks many internal Git parsers to reduce memory usage and improve performance

Fixed

  • Fixes #1818 - Ambiguous error message on GitHub authentication errors
  • Fixes #1645 - Possible catastrophic backtracking with large inputs
  • Fixes #1506 - Annoying Github login request
  • Fixes #1735 - "gitlens.hovers.detailsMarkdownFormat" edit error
  • Fixes #1745 - autolinks.url encodes hash char
  • Fixes #1572 - Forced regular expression search in changes
  • Fixes #1473 - Support VSCodium in interactive rebase editor
  • Fixes #1699 - Exception has occurred: RangeError [ERR_OUT_OF_RANGE]
  • Fixes #1601 - Add a better time sample in "Dates & Times" setting
  • Fixes performance issue with the rich hover on the status bar blame
  • Fixes cross repository branch switching via the Git Command Palette
  • Fixes an issue with TOC entries in the VS Code settings editor
  • Fixes issues using quotes when searching for commits in certain scenarios
  • Fixes issues when revealing items in GitLens views the item wouldn't get selected properly
  • Fixes issues with retries on Git Command Palette command steps
  • Fixes code splitting issue where GitHub support wasn't split out of the main bundle for better loading performance
  • Fixes issue with quotes and commit search
  • Fixes a leaked disposable on cancellable promises

11.7.0 - 2021-11-18

Added

  • Adds a new rich commit details hover to the blame information in the status bar
    • Adds a gitlens.statusBar.tooltipFormat setting to specify the format (in markdown) of hover shown over the blame information in the status bar
  • Adds a new rich hover to the GitLens mode in the status bar
  • Adds functional groupings to all GitLens settings when using the VS Code settings UI. Groups will be displayed in the table of contents in the settings UI — thanks to Raymond Zhao (@rzhao271) on the VS Code team for allowing extensions to add groups to VS Code settings UI
  • Adds new action buttons on many quick pick menu options, including in the Git Command Palette — thanks to Tyler Leonhardt (@tylerLeonhardt) on the VS Code team for the API support
  • Adds Gerrit remote provider support — closes #720 thanks to PR #1535 by Andrew Savage (@andrewsavage1)
  • Adds new Open File command (with Open Revision as an alt-click) to files in comparisons — closes #1710
  • Adds a new Cherry Pick without Committing confirmation option to the Git Command Palette's cherry-pick command — closes #1693
  • Adds a new Merge without Fast-Forwarding or Committing confirmation option to the Git Command Palette's merge command — closes #1178 thanks to PR #1621 by Dmitry Ulupov (@dimaulupov)
  • Adds commit message autolinking of merged pull requests for Azure Repos — closes #1486 thanks to PR #1487 by Mark Molinaro (@markjm)
  • Adds a new AzureDevOps type to gitlens.remotes to better support Azure DevOps remote matching — thanks to PR #1487 by Dmitry Gurovich (@yrtimiD)

Changed

  • Changes the No Fast-forward Merge confirmation option in the Git Command Palette's merge command to Merge without Fast-Forwarding

Fixed

  • Fixes #1669 - Workitem Link (Hover ) for Repository (DevOps) with Blank is broken
  • Fixes #1695 - gitlens.remotes: ${repo} has '%2520' instead of '%20' for a space
  • Fixes #1531 - Typo in gitlens.defaultGravatarsStyle options — thanks to PR #1532 by Alwin Wang (@alwinw)
  • Fixes #1511 - Avatars are blurry on retina displays — thanks to PR #1595 by Adaex Yang (@adaex)
  • Fixes #1609 - X.globalState.setKeysForSync is not a function — thanks to PR #1610 by Stanislav Lvovsky (@slavik-lvovsky)
  • Fixes #1131 - Order matters for search filters in 'search commits' — with help from PR #1575 by Lior Kletter (@Git-Lior)
  • Fixes #1583 - Should hide the context menu on unrelated tabs — thanks to PR #1589 by Takashi Tamura (@tamuratak)
  • Fixes #1587 - Hover on blame can duplicate — thanks to PR #1588 by Takashi Tamura (@tamuratak)

11.6.1 - 2021-10-08

Changed

  • GitLens joins forces with GitKraken! — Learn more

11.6.0 - 2021-07-13

Added

  • Adds new Open Previous Changes with Working File command to commit files in views — closes #1529
  • Adopts new vscode createStatusBarItem API to allow for independent toggling — closes #1543

Changed

  • Dynamically generates hashes and nonces for webview <script> and <style> tags for better security

Fixed

  • Fixes #1432 - Unhandled Timeout Promise
  • Fixes #1562 - Yarn audit fails with 2 high sev vulnerabilities (dev dependencies only) — thanks to PR #1563 by Ivan Volzhev (@ivolzhevbt)
  • Fixes #1566 - Bug: unable to open 'pr.url' when clicking PR link
  • Fixes #1545 - Missing branch comparison controls in versions 11.5.0 and 11.5.1
  • Fixes #1548 - "Don't show again" on debug log warning doesn't work
  • Fixes #1449 - Configured remotes not showing up in quickpick menu when opening commit on remote
  • Fixes issues where auto-linking of GitHub 3rd party issue links didn't always work
  • Fixes issue with long commit messages on rebase editor
  • Fixes compatibility issue with Live Share

11.5.1 - 2021-06-14

Fixed

  • Fixes up/down order of the alternate shortcuts on the Interactive Rebase Editor

11.5.0 - 2021-06-14

Added

  • Adds support for Workspace Trust
  • Adds rich hovers to commits in the views — including associated pull requests (when connected to GitHub) and auto-linked issues
  • Adds a new section for associated pull requests (when connected to GitHub) and auto-linked issues to the Details hover
  • Adds the ability to filter comparisons to show only either the left-side or right-side file differences
  • Adds the Open Folder History command to root folders — closes #1505
  • Adds alternate j/k and shift+j/shift+k keyboard shortcuts to the Interactive Rebase Editor — closes #1538
  • Adds the ability to show contributor statistics, files changed as well as lines added and deleted (can take a while to compute depending on the repository) — closes #1489
    • Adds a Show Statistics / Hide Statistics toggle to the ... menu of the Contributors view
    • Adds a gitlens.views.contributors.showStatistics setting to specify whether to show contributor statistics in the Contributors view
  • Adds Create Pull Request... inline command to branches in the views

Changed

  • Adopts more VS Code codicons
  • Changes the Restore command title to Restore (Checkout) — closes #1493
  • Changes Compare with Working icon to better align with VS Code compare changes codicon
  • Renames the Discuss / Collab... button on the Details hover to Team...
  • Reverses the resulting comparison of the Compare with HEAD, Compare with Working, and Compare with Upstream commands in the views

Fixed

  • Fixes #1538 - Wrong initial keyboard focus in interactive rebase
  • Fixes #1498 - "Search & Compare" broken entries
  • Fixes #1507 - Communicate git error instead of "unable to find git"
  • Fixes #1512 - Git tag command can add an extra -m
  • Fixes #1402 - File history missing commits from other branches
  • Fixes an issue where the current line blame intermittently fails to appear
  • Fixes an issue where auto-linking of GitHub 3rd party issue links was broken
  • Fixes an issue where view decorations on macOS wouldn't show the correct icon

[11.4.1] - 2021-04-14

Added

  • Adds an alternate Copy Remote File URL command (gitlens.copyRemoteFileUrlWithoutRange) to copy the remote url of the file without including any line range

Fixed

  • Fixes #1458 - "Copy Remote File URL" not showing line ranges

11.4.0 - 2021-04-08

Added

  • Adds a new status indicator (decoration), on the right, and a themeable colorization to branches in the views
    • ! — indicates that the branch is missing its upstream (likely deleted from the remote)
  • Adds a new indicator to branches in quick pick menus when a branch is missing its upstream
  • Adds Open Folder History command to folders in the Explorer view to show the folder's history in the File History view
  • Adds Gitea remote provider support — closes #1379 thanks to PR #1396 by Nils K (septatrix)
  • Adds a gitlens.advanced.commitOrdering setting to specify the order by which commits will be shown. If unspecified, commits will be shown in reverse chronological order — closes #1257 thanks to PR #1344 by Andy Tang (thewindsofwinter) and Shashank Shastri (Shashank-Shastri)
  • Adds documentation for the GitLens: Set Views Layout command — thanks to PR #1404 by Asif Kamran Malick (@akmalick)
  • Adds an Enable Debug Logging command (gitlens.enableDebugLogging) to enable debug logging to the GitLens output channel
  • Adds a Disable Debug Logging command (gitlens.disableDebugLogging) to disable debug logging to the GitLens output channel

Fixed

  • Fixes #1423 - Create tag with message fails
  • Fixes #1428 - Incorrect branch name when no commits exist on new repo
  • Fixes #1444 - File history view "Open Changes with Working File" does not work for the very first commit
  • Fixes #1448 - Hashes (#) are percent encoded in custom remote urls
  • Fixes #1447 - Open File on Remote From... is missing remote branches
  • Fixes #1442 - Interactive Rebase Editor not opened but plain text file when called from terminal
  • Fixes #1439 - Copying a remote file URL for a file on Azure DevOps does not work — thanks to PR #1440 by Lee Chang (MeltingMosaic)
  • Fixes #1445 - Improve documentation for hiding default added editor actions
  • Fixes #1411 - Click on branch compare node does not expand the tree
  • Fixes an issue where the Changes to pull from *'s * files changed was always 0

11.3.0 - 2021-03-05

Added

  • Adds new status indicators (decorations), on the right, and themeable colorizations to branches in the views
    • — indicates that the branch is the current branch
    • + green colorization — indicates that the branch has unpushed changes (ahead)
    • + red colorization — indicates that the branch has unpulled changes (behind)
    • ▼▲ + yellow colorization — indicates that the branch has diverged from its upstream; meaning it has both unpulled and unpushed changes
    • ▲+ + green colorization — indicates that the branch hasn't yet been published to an upstream remote
  • Adds new status indicators (decorations), on the right, and themeable colorizations to files in the views
    • M — indicates that the file is/was modified
    • A + green colorization — indicates that the file is/was added
    • D + red colorization — indicates that the file is/was deleted
    • R + green colorization — indicates that the file is/was renamed
    • C + green colorization — indicates that the file is/was copied
    • I + grey colorization — indicates that the file is ignored
    • U + green colorization — indicates that the file is untracked
  • Adds a new built-in Create Pull Request flow that starts opening a pull request on github.com
  • Adds a new Open Blame Prior to Change command (gitlens.openBlamePriorToChange) to open the blame of prior revision of the selected line in the current file — closes #1014
  • Adds new Git CodeLens action options
    • Opens the commit on the remote service (when available) and Copies the remote commit url to the clipboard (when available)
    • Opens the file revision on the remote service (when available) and Copies the remote file revision url to the clipboard (when available)
    • Toggles the file heatmap
    • Toggles the file changes since before the commit
    • Toggles the file changes from the commit
  • Adds new status bar blame action options
    • Opens the commit on the remote service (when available) and Copies the remote commit url to the clipboard (when available) — closes #1378
    • Opens the file revision on the remote service (when available) and Copies the remote file revision url to the clipboard (when available)
    • Toggles the file heatmap
    • Toggles the file changes since before the commit
    • Toggles the file changes from the commit
  • Adds Publish Repository command (gitlens.publishRepository) to publish the repository to a remote provider
  • Adds supported remote types in README — thanks to PR #1371 by Vladislav Guleaev (@vguleaev)
  • Adds a new Reset Avatar Cache command (gitlens.resetAvatarCache) to clear the avatar cache

Changed

  • Changes the Blame Previous Revision command on the hover to Open Blame Prior to this Change
  • Changes the Blame Previous Revision command icon on the hover to the versions codicon

Fixed

  • Fixes #1438 - Messages in hovers wrong encoding using non UTF-8
  • Fixes #1372 - Unexpected repository detection on editor startup after recent updates
  • Fixes #1394 - Repository view settings appear disabled
  • Fixes #1391 - Branch names are not properly escaped in git commands
  • Fixes #1336 - Need to allow GitLens to connect to GitHub in every Codespace (requires VS Code v1.54-insiders or later)
  • Fixes #1363 - Error 'Unable to open compare', when git setting log.showsignature is active
  • Fixes #1368 - Suppress message "GitLens was unable to find Git"
  • Fixes an issue where the rebase status in the views could get "stuck" after a rebase completed
  • Fixes typo in README — thanks to PR #1374 by David Rees (@studgeek)

11.2.1 - 2021-02-02

Changed

  • Changes to additionally show merged pull requests at the root of the Commits and Repositories views

Fixed

  • Fixes #1361 - Interactive rebase editor fails when opened in a VS Code window that doesn't have the repository opened
  • Fixes #1357 - Branch sorting may be reversed — thanks to PR #1358 by sueka (@sueka)

11.2.0 - 2021-02-02

Added

  • Adds rebase and/or merge status when applicable to the Commits and Repositories views

    • Merging into <branch> or Resolve conflicts before merging into <branch> — lists any conflicted files. Conflicted files show comparisons with the common base of the current and incoming changes to aid in resolving the conflict by making it easier to see where changes originated

      Merging

    • Rebasing <branch> or Resolve conflicts to continue rebasing <branch> — shows the number of rebase steps left, the commit the rebase is paused at, and lists any conflicted files. Conflicted files show comparisons with the common base of the current and incoming changes to aid in resolving the conflict by making it easier to see where changes originated

      Rebasing

  • Adds rebase and/or merge conflict status when applicable to the File History and Line History views

    • Merge Changes — show comparisons with the common base of the current and incoming changes to aid in resolving the conflict by making it easier to see where changes originated

      Merge Conflicts

  • Adds status indicator colors to pull request icons in GitLens views

  • Adds a new Quick Open File History command to all places where Open File History already exists — closes #1156

  • Adds the Add Remote command to the branch status in the Branches, Commits, and Repositories views when there are no Git remotes configured

  • Adds a new Browse Repository from Before Here (gitlens.browseRepoBeforeRevision) and Browse Repository from Before Here in New Window (gitlens.browseRepoBeforeRevisionInNewWindow) commands

  • Adds Repository from Before Here and Repository from Before Here in New Window to the Browse submenu of commits in the views

  • Adds a new Copy Current Branch Name (gitlens.copyCurrentBranch) command to copy the current branch name to the clipboard — closes #1306 — thanks to PR #1307 by Ken Hom (@kh0m)

  • Adds a Switch to Text button on the Interactive Rebase Editor to open the text rebase todo file — note that closing either document will start the rebase

  • Adds a notification which asks if you want to create a pull request after publishing a new branch

  • Adds CodeStream partnership

  • Adds a gitlens.views.branches.reveal setting to specify whether to reveal branches in the Branches view, otherwise they will be revealed in the Repositories view

  • Adds a gitlens.views.commits.reveal setting to specify whether to reveal commits in the Commits view, otherwise they will be revealed in the Repositories view

  • Adds a gitlens.views.remotes.reveal setting to specify whether to reveal remotes in the Remotes view, otherwise they will be revealed in the Repositories view

  • Adds a gitlens.views.stashes.reveal setting to specify whether to reveal stashes in the Stashes view, otherwise they will be revealed in the Repositories view

  • Adds a gitlens.views.tags.reveal setting to specify whether to reveal tags in the Tags view, otherwise they will be revealed in the Repositories view

  • Adds a gitlens.advanced.abbreviateShaOnCopy setting to specify to whether to copy full or abbreviated commit SHAs to the clipboard. Abbreviates to the length of gitlens.advanced.abbreviatedShaLength — closes #1062 — thanks to PR #1316 by Brendon Smith (@br3ndonland)

  • Adds a gitlens.advanced.externalDiffTool setting to specify an optional external diff tool to use when comparing files. Must be a configured Git difftool.

  • Adds a gitlens.advanced.externalDirectoryDiffTool setting to specify an optional external diff tool to use when comparing directories. Must be a configured Git difftool.

  • Adds a new regex option to gitlens.remotes to better support custom remote matching — closes #1196

Changed

  • Changes gitlens.statusBar.reduceFlicker to be on by default and improves its display — closes #1353
  • Changes the Interactive Rebase Editor to abort the rebase if you just close it without choosing an action
  • Changes Push to Commit... on the HEAD commit to be Push instead as there is no need for a commit specific push in that case
  • Renames Browse from Here command to Browse Repository from Here in the command palette and quick pick menus
  • Renames Browse from Here in New Window command to Browse Repository from Here in New Window in the command palette and quick pick menus
  • Renames Browse from Here to Repository from Here on the Browse submenu of commits in the views
  • Renames Browse from Here in New Window to Repository from Here in New Window on the Browse submenu of commits in the views

Fixed

  • Fixes #1267 - File history fails on Git for Windows 2.27 ("There are no editors open that can provide file history information.")
  • Fixes #1006 - "GitLens: Open File on Remote" opens wrong Bitbucket URL
  • Fixes #901 - Bitbucket Server fails when url = https://DOMAIN/stash/scm/PROJECT/REPO.git
  • Fixes #1354 - Stuck after merge a branch with a single quote in the name
  • Fixes #863 - Pulling all repositories doesn't work unless built-in Git knows about the repo (requires VS Code v1.53 or later)
  • Fixes #1332 - Stashes created with command line don't show up in the "Stashes" section
  • Fixes #1045 - View File History not working - absolute path used — thanks to PR #1334 by egfx-notifications (@egfx-notifications)
  • Fixes #1323 - Interactive rebase hangs
  • Fixes #1183 - stash all changes has no effect when the number of files is large
  • Fixes #1308 - Escape quotes for PRs titles
  • Fixes #1309 - "Fetch" not working on remote branches
  • Fixes an issue where many views wouldn't refresh properly when going from no items to some items
  • Fixes an issue where Publish Branch was incorrectly showing up on remote branches
  • Fixes an issue where the Open Directory Compare * commands failed to work
  • Fixes an issue where pinning a file/line to the File History view or Line History view would get lost if the view was collapsed and expanded

Removed

  • Removes the gitlens.repositories.enabled setting, since the view is toggleable as any other view now
  • Removes the gitlens.lineHistory.enabled setting, since the view is toggleable as any other view now
  • Removes the Hide Repositories view command, since the view is toggleable as any other view now
  • Removes the Hide Line History view command, since the view is toggleable as any other view now

11.1.3 - 2021-01-05

Fixed

  • Fixes #1303 - Open on Remote is creating invalid URLs for Azure Devops — thanks to PR #1304 by Travis Collins (@TravisTX)

11.1.2 - 2021-01-03

Fixed

  • Fixes the outdated documentation url on the Connect Remote Provider quick pick menu — thanks to PR #1300 by Ahmadou Waly Ndiaye (@sir-kain)

11.1.1 - 2021-01-02

Changes

  • Improves the performance of the Stashes and Contributors views

Fixed

  • Fixes #1302 - Welcome screen on every editor window is very tedious
  • Fixes #1285 - Uncommitted staged changes after pull
  • Fixes #1294 - Error when open commits list

[11.1.0] - 2020-12-23

Added

  • Refines the Repositories view to better align its features with all the new views
    • Adds menu toggles, and the settings below to allow for far greater customization of the sections in the Repositories view
    • Adds a gitlens.views.repositories.branches.showBranchComparison setting to specify whether to show a comparison of the branch with a user-selected reference (branch, tag. etc) under each branch in the Repositories view
    • Adds a gitlens.views.repositories.showBranches setting to specify whether to show the branches for each repository
    • Adds a gitlens.views.repositories.showCommits setting to specify whether to show the commits on the current branch for each repository
    • Adds a gitlens.views.repositories.showContributors setting to specify whether to show the contributors for each repository
    • Adds a gitlens.views.repositories.showIncomingActivity setting to specify whether to show the experimental incoming activity for each repository
    • Adds a gitlens.views.repositories.showRemotes setting to specify whether to show the remotes for each repository
    • Adds a gitlens.views.repositories.showStashes setting to specify whether to show the stashes for each repository
    • Adds a gitlens.views.repositories.showTags setting to specify whether to show the tags for each repository
    • Adds a gitlens.views.repositories.showUpstreamStatus setting to specify whether to show the upstream status of the current branch for each repository
    • Adds all the settings above to the Repositories view section in the GitLens Interactive Settings
  • Adds better visibility to the, hidden by default, Repositories and Line History views
    • Adds a Repositories view toggle command to the Commits view's context menu
    • Adds a Line History view toggle command to the File History view's context menu
    • Re-adds the Line History view settings to the GitLens Interactive Settings
  • Adds usage-based sorting (on by default) to the Git Command Palette
    • Adds a gitlens.gitCommands.sortBy setting to specify how Git commands are sorted in the Git Command Palette
  • Adds ability to show gutter heatmap in the gutter and/or on the scroll bar — closes #297
    • Adds a gitlens.heatmap.locations setting to specify where the indicators of the gutter heatmap annotations will be shown
  • Adds a gitlens.fileAnnotations.command setting to specify whether the file annotations button in the editor title shows a menu or immediately toggles the specified file annotations — closes #1165 thanks to PR #1171 by Raaj Patil (@arrpee)
    • Adds this new option to the Menus & Toolbars section of the GitLens Interactive Settings
  • Adds a Push to Commit... command to unpublished commits in the Commits, Branches, and Repositories views, and to unpublished files in the File History and Line History views
  • Adds a Commit submenu to files in the File History and Line History views — closes #1044
  • Adds an Open File on Remote From... command (gitlens.openFileOnRemoteFrom) to open a file or revision on a specific branch or tag on the remote provider — closes #1071
  • Adds a Copy Remote File URL From... command (gitlens.copyRemoteFileUrlFrom) to copy the url of a file or revision on a specific branch or tag the remote provider — closes #1071
  • Adds a welcome, i.e. richer empty state, to the Search & Compare view
  • Adds dynamic updating of the last fetched date/time in the Commits and Repositories views
  • Adds a Connect to Remote command (gitlens.connectRemoteProvider) to connect to a supported remote service to enable a rich integration
  • Adds a Disconnect from Remote command (gitlens.disconnectRemoteProvider) to disconnect from a connected remote service
  • Adds a gitlens.integrations.enabled setting to specify whether to enable rich integrations with any supported remote services — see #1208
  • Adds a gitlens.terminalLinks.enabled setting to specify whether to enable terminal links — autolinks in the integrated terminal to quickly jump to more details for commits, branches, tags, and more — closes #1284
  • Adds a gitlens.defaultTimeFormat setting to specify how times will be formatted by default
  • Adds a gitlens.showWelcomeOnInstall setting to specify whether to show the Welcome (Quick Setup) experience on first install — closes #1049 thanks to PR #1258 by Rickard (@rickardp)
  • Adds a star as a favorite indicator on branches in the quick pick menus
  • Adds ability to toggle the Toggle Compare with: Working Tree / Branch command before a comparison is chosen
  • Adds GitLens extensibility APIs
    • Adds an action runner extensibility point to provide a runner (handler) for the new createPullRequest and openPullRequest actions — see gitlens.d.ts for API definitions

Changed

  • Changes the Incoming Activity section of the Repositories view to be hidden by default, as it is still experimental
  • Changes the options on the Git Command Palette's revert command to now be Revert (--no-edit) and Revert & Edit (--edit) — closes #1269
  • Changes the thickness (boldness) of a handful of icons to better match VS Code codicons

Fixed

  • Fixes #1016 - "Last fetched" message is also updated when fetch failed
  • Fixes #1218 - Opening Ahead/Behind files isn't showing the desire diff (e.g. diff with the merge base)
  • Fixes #1255 - Repository folders are missing repository actions (e.g. favorites, close repo, etc)
  • Fixes #1246 - Gutter Blame avatar does not use Gravatar fallback style
  • Fixes #1208 - Connect to Github notification is noisy
  • Fixes #526 - FAILED in gitlens.outputLevel=verbose; likely due to regex not in quotes
  • Fixes #1222 - GitLens: Open Associated Pull Request doesn't work
  • Fixes #1223 - commit pane, ${tips} does not show tags
  • Fixes #1225 - Changes hover is wrong if the original/new line number doesn't match
  • Fixes #1045 - View File History not working - absolute path used — thanks to PR #1209 by Mike Surcouf (@mikes-gh)
  • Fixes #1087 - Error retrieving line history from UNC path — thanks to PR #1209 by Mike Surcouf (@mikes-gh)
  • Fixes #1176 - Can't selectively apply stash
  • Fixes #1212 - Stashes list doesn't refresh on deletion
  • Fixes #1191 - "Gitlens › Views › Repositories: Auto Refresh" not working
  • Fixes #1202 - "Copy Remote File URL" url-encodes the URL
  • Fixes an issue where Gutter * file annotations wouldn't dynamically update when changing certain default configuration settings
  • Fixes an issue where git shortlog could hang (when there is no HEAD)
  • Fixes an issue where GitLens: Show Repositories View command wouldn't work unless the view was enabled first
  • Fixes an issue where GitLens: Show Line History View command wasn't showing up unless the view was enabled first
  • Fixes an issue where trying to force push the current branch would fail
  • Fixes an issue where Push to Commit... would incorrectly show a repository picker
  • Fixes an issue where the Add Remote command wasn't working
  • Fixes an issue where the gitlens.sortBranchesBy and gitlens.sortTagsBy settings where not honored in many quick pick menus
  • Fixes an issue where the Toggle Compare with: Working Tree / Branch command was showing incorrectly on the branch comparisons

11.0.6 - 2020-11.28

Changed

  • Changes the Where did my views go? view to show on this next upgrade, since somehow (still not sure how) it was never shown to many (most?) users
  • Changes GitHub connection rejection to be per-workspace (rather than global)

Fixed

  • Fixes #1205 - Setting heatmap's coldColor and hotColor breaks file blame & related functionality
  • Fixes invalid branch status showing up for remote branches

11.0.5 - 2020-11-23

Fixed

  • Fixes #1204 - Compare file changes: "new" and "old" sides of the compare are backwards

11.0.4 - 2020-11-22

Fixed

  • Fixes #1161 - Compare file differences between branches
  • Fixes #1157 - GitLens report X files changed when comparing working tree with a branch having identical files

11.0.3 - 2020-11-22

Fixed

  • Fixes #1163 - Use Interactive Rebase Editor when run from GitLens command (regardless of Git config)
  • Fixes #1197 - Can't squash commit in interactive rebase editor
  • Fixes the gitlens.codeLens.scopes setting json schema

11.0.2 - 2020-11-20

Added

  • Adds a quick-access button to the Interactive Rebase Editor to disable it — closes #1153
  • Adds shortcut keys to start and abort a rebase in the Interactive Rebase Editor
  • Adds a Disable Interactive Rebase Editor command (gitlens.disableRebaseEditor) to disable the interactive rebase editor
  • Adds an Enable Interactive Rebase Editor command (gitlens.enableRebaseEditor) to enable the interactive rebase editor
  • Adds an Interactive Rebase Editor section to the GitLens Interactive Settings

Changes

  • Changes the layout spacing of the Interactive Rebase Editor to allow for more commits to be shown at once

Fixed

  • Fixes #1187 - Warning about incorrect regexp in DevTools console — thanks to PR #1188 by Andrii Dieiev (@IllusionMH)
  • Fixes #1151 - Icons not showing in interactive rebase
  • Fixes #1166 - Enormous avatars in interactive rebase view

11.0.1 - 2020-11-16

Added

  • Adds a Compare References... command (gitlens.compareWith) to compare two selected references
  • Adds ability to enter reference ranges (e.g. main...release/1.0) to the Git Command Palette's history command

Fixed

  • Fixes #1148 - Follow renames on File History cannot load more history
  • Fixes #1157 - GitLens report X files changed when comparing working tree with a branch having identical files
  • Fixes #1150 - Cannot read property 'provider' of undefined

11.0.0 - 2020-11-14

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

      Commits view

      • Adds an indicator icon (up arrow) to unpublished (unpushed) commits
    • Branches view — visualize, explore, and manage Git branches

      Branches view

    • Remotes view — visualize, explore, and manage Git remotes and remote branches

      Remotes view

    • Stashes view — visualize, explore, and manage Git stashes

      Stashes view

    • Tags view — visualize, explore, and manage Git tags

      Tags view

    • Contributors view — visualize, navigate, and explore contributors

      Contributors view

      • Moves the current user to be first and adds a (you) suffix
    • Search & Compare view — search and explore commit histories by message, author, files, id, etc, or visualize comparisons between branches, tags, commits, and more

      Search & Compare view

      • 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

      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

    Rebase Editor

  • Adds terminal linksctrl+click on autolinks in the integrated terminal to quickly jump to more details for commits, branches, tags, and more

    Terminal Links

  • Adds rich integration with GitHub

    • Adds GitHub avatar support!

    • 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 associated pull requests to branches and commits in GitLens views

    • Adds rich 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)

    Gutter Heatmap

    • 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

    Gutter Changes

    • 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

    Git Command Palette

    • 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 menu
        • alt+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 menu
        • alt+right arrow — searches for the selected commit and shows the results in the Search Commits view
        • ctrl+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 repository 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 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
  • 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 CodeLens to markdown headers

  • Adds new Git CodeLens options to disable the click actions on both the recent change and authors CodeLens — closes #989 thanks to PR #1009 by Abdulrahman (Abdu) Assabri (@abdusabri)

  • Adds per-language customizations to the gitlens.codeLens.scopes and gitlens.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 CodeLens to be less intrusive when they are unavailable because of unsaved changes, via new defaults for the gitlens.strings.codeLens.unsavedChanges.* settings
  • Refines all 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 and scm/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-language gitlens.codeLens.scopesandgitlens.codeLens.symbolScopes settings instead
  • Deprecates the gitlens.gitCommands.search.showResultsInView setting as it has been renamed to gitlens.gitCommands.search.showResultsInSideBar
  • Deprecates the gitlens.views.commitFileFormat setting, use gitlens.views.formats.files.label instead
  • Deprecates the gitlens.views.commitFileDescriptionFormat setting, use gitlens.views.formats.files.description instead
  • Deprecates the gitlens.views.commitFormat setting, use gitlens.views.formats.commits.label instead
  • Deprecates the gitlens.views.commitDescriptionFormat setting, use gitlens.views.formats.commits.description instead
  • Deprecates the gitlens.views.stashFileFormat setting, use gitlens.views.formats.files.label instead
  • Deprecates the gitlens.views.stashFileDescriptionFormat setting, use gitlens.views.formats.files.description instead
  • Deprecates the gitlens.views.stashFormat setting, use gitlens.views.formats.stashes.label instead
  • Deprecates the gitlens.views.stashDescriptionFormat setting, use gitlens.views.formats.stashes.description instead
  • Deprecates the gitlens.views.statusFileFormat setting, use gitlens.views.formats.files.label instead
  • Deprecates the gitlens.views.statusFileDescriptionFormat setting, use gitlens.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/gitkraken/vscode-gitlens/security/code-scanning/1
  • Fixes Inefficient regular expression code scan warning — https://github.com/gitkraken/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 González Vela (@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 Repositories 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

10.2.2 - 2020-06-10

Added

  • Adds unique icons for each GitLens view to better support view moving in VS Code 1.46

Fixed

  • Fixes an issue with some settings showing up with errors on the VS Code settings UI

10.2.1 - 2020-02-10

Fixed

  • Fixes #932 - Absolute path used in compare on git version 2.25.0.windows.1
  • Fixes an issue with showing changes of staged files in File History view, Open Changes with Previous Revision command, etc.
  • Fixes certain error handling because of change in a VS Code error message
  • Fixes file history issues w/ copied/deleted files

10.2.0 - 2019-11-18

Added

  • Adds user-defined autolinks to external resources in commit messages — closes #897
    • Adds a gitlens.autolinks setting to configure the autolinks
    • For example to autolink Jira issues (e.g. JIRA-123 ⟶ https://jira.company.com/issue?query=123):
      • Use "gitlens.autolinks": [{ "prefix": "JIRA-", "url": "https://jira.company.com/issue?query=<num>" }]
  • Adds a Highlight Changes command (gitlens.views.highlightChanges) to commits in GitLens views to highlight the changes lines in the current file
  • Adds a Highlight Revision Changes command (gitlens.views.highlightRevisionChanges) to commits in GitLens views to highlight the changes lines in the revision
  • Adds branch and tag sorting options to the interactive settings editor

Changed

  • Changes commit search to auto-detect full commit shas without the need to prefix it with commit: or #:
  • Changes paging in GitLens views to no longer be naive and now only loads the additional required data for much better performance
  • Changes the Toggle File Layout command icon when in tree layout to match VS Code
  • Restores the original commit icon in the editor toolbar

Fixed

  • Fixes #893 - Problems with # symbol in branch names — thanks to PR #894 by Allan Karlson (@bees4ever)
  • Fixes #677 - Line and file history not working in symlinked repository
  • Fixes #667 - Decoration rendered before code
  • Fixes issues where line blame annotations would sometimes stop working
  • Fixes compact view when branches are shown as a tree

10.1.2 - 2019-11-06

Changed

  • Changes commit icon to be closer to VS Code's
  • Changes webviews (welcome, settings) to have inline CSS to avoid FOUC (flash of unstyled content)
  • Only applies --ignore-revs-file custom blame flag if it is supported by the current Git version and the file exists

Fixed

  • Fixes #882 - Search for changes command is malformed
  • Fixes #875 - Editing causes all contextual blames to disappear
  • Fixes #890 - Version warning "Don't Show Again" button not working
  • Fixes #889 - Make the heart icon (support GitLens) rounder
  • Fixes broken view layout buttons in the interactive settings editor

10.1.1 - 2019-10-10

Added

  • Adds new options to sort tags by date, similar to branches via the gitlens.sortTagsBy setting
  • Adds the tag reference and date to tags in the Repositories view

Changed

  • Bumps the required version of Git to be at least 2.7.2

Fixed

  • Fixes #872 - OpenFileInRemoteCommand Cannot read property 'range' of null
  • Fixes #855 - Missing tags in Repositories view
  • Fixes an issue when creating tags with a message that contains spaces
  • Fixes an issue when creating and switching to a new branch

10.1.0 - 2019-10-06

Added

  • Adds a new Git Commands (gitlens.gitCommands)
    • Adds a new branch command with sub-commands for create, rename, and delete
      • Adds a Reveal Branch in Repositories View button to the quick pick menu toolbar
      • Adds keyboard navigation
        • right arrow — reveals the selected branch in the Repositories view, if there is no text in the quick pick menu
        • alt+right arrow, ctrl+right arrow, cmd+right arrow (macOS) — reveals the selected branch in the Repositories view
    • Adds a new tag command with sub-commands for create, and delete
      • Adds a Reveal Branch in Repositories View or Reveal Tag in Repositories View button to the quick pick menu toolbar
      • Adds keyboard navigation
        • right arrow — reveals the selected branch or tag in the Repositories view, if there is no text in the quick pick menu
        • alt+right arrow, ctrl+right arrow, cmd+right arrow (macOS) — reveals the selected branch or tag in the Repositories view
  • Adds better co-author support — closes #373
    • Adds a new co-author command to the Git Commands quick pick menu to add a co-author to a commit message
    • Adds a new Add Co-authors command to the inline toolbar and context menu for the Contributors node in the Repositories view
    • Adds the Add as Co-author command to the inline toolbar for the contributors in the Repositories view
  • Adds support for GitHub Pull Request uri schemes (pr://) — closes #678
  • Adds new actions options to the status bar blame
    • Adds a gitlens.showCommitsInView option to show the commit in the Search Commits view
    • Adds a gitlens.revealCommitInView option to reveal the commit in the Repositories view
  • Adds a new Rename Branch... command to branches in the Repositories view

Changed

  • Improves (drastically) the performance of revealing commits in the Repositories view
  • Changes the Create Branch (via Terminal)... command to Create Branch... and uses the branch create Git command
  • Changes the Delete Branch (via Terminal)... command to Delete Branch... and uses the branch delete Git command
  • Changes the Create Tag (via Terminal)... command to Create Tag... and uses the tag create Git command
  • Changes the Delete Tag (via Terminal)... command to Delete Tag... and uses the tag delete Git command

Fixed

  • Fixes #826 - Deleting stash doesn't remove the stash from the list - have to refresh
  • Fixes #769 - compacting causes duplicate names
  • Fixes issues with issue linking in hovers
  • Fixes issues with the Show commits in Search Commits view Git CodeLens action with uncommitted changes
  • Fixes missing prefix while search nodes are loading

10.0.1 - 2019-09-24

Added

  • Adds a button to toggle the file layout (list vs. tree vs. auto) to the Repositories, Compare, and Search Commits views
  • Adds a button to toggle the branch layout (list vs. tree) to the Branches node of the Repositories view

Changed

  • Changes the experimental Incoming Activity node in the Repositories view to be available for everyone (not just if gitlens.insiders is true)

Fixed

  • Fixes #862 - Command failed when expanding a local branch
  • Fixes #860 - Unknown date format error
  • Fixes #858 - GitHub avatars in blame line hovers are huge
  • Fixes issue with locating a working file when the file is staged or modified

10.0.0- 2019-09-20

Added

  • Adds all-new iconography to better match VS Code's new visual style — thanks to John Letey (@johnletey) and Jon Beaumont-Pike (@jonbp) for their help!
  • Adds an all-new Welcome experience with a simple quick setup of common GitLens features — accessible via the GitLens: Welcome (gitlens.showWelcomePage) command
  • Adds a new and improved interactive Settings editor experience — accessible via the GitLens: Open Settings (gitlens.showSettingsPage) command
  • Adds a new and improved Git Commands (gitlens.gitCommands) experience
    • Adds a Keep Open toggle button to the quick pick menu toolbar
      • Saves to the new gitlens.gitCommands.closeOnFocusOut setting to specify whether to dismiss the Git Commands menu when focus is lost (if not, press ESC to dismiss)
    • Adds a confirmation indicator / toggle button to the quick pick menu toolbar
      • Indicates whether the specified Git command will have a confirmation step — some commands require confirmation and can't be toggled
      • Saves to the new gitlens.gitCommands.skipConfirmations setting to specify which (and when) Git commands will skip the confirmation step
    • Adds keyboard navigation
      • left arrow — goes back to previous step, if there is no text in the quick pick menu
      • alt+left arrow, ctrl+left arrow, cmd+left arrow (macOS) — goes back to previous step
    • Adds a new search command to search for specific commits — see below for more details on the all-new commit search experience
    • Adds a new stash command with sub-commands for apply, drop, list, pop, and push
      • Adds a Reveal Stash in Repositories View button to the quick pick menu toolbar
      • Adds keyboard navigation
      • right arrow — reveals the selected stash in the Repositories view, if there is no text in the quick pick menu
      • alt+right arrow, ctrl+right arrow, cmd+right arrow (macOS) — reveals the selected stash in the Repositories view
    • Adds a new reset command to reset current HEAD to a specified commit
    • Adds a new revert command to revert specific commits
    • Improves and enhances the fetch command
      • Adds a new Fetch All & Prune confirmation option
      • Adds the last fetched on date to the confirmation step, when a single repo is selected
    • Improves and enhances the pull command
      • Adds a Fetch button to the quick pick menu toolbar on the confirmation step, when a single repo is selected
      • Adds the last fetched on date to the confirmation step, when a single repo is selected
      • Adds the number of commits to pull on the confirmation step, when a single repo is selected
    • Improves and enhances the push command
      • Adds a new Force Push confirmation option
      • Adds the number of commits to push on the confirmation step, when a single repo is selected
    • Improves and enhances the merge command
      • Adds a new Squash Merge confirmation option
      • Adds the ability to choose an arbitrary reference (commit id) just by typing (pasting)
    • Improves and enhances the rebase command
      • Adds the ability to switch between picking a branch/tag or a specific commit via a toggle button in the quick pick menu toolbar
      • Adds the ability to choose an arbitrary reference (commit id) just by typing (pasting)
    • Improves and enhances the cherry-pick command
      • Adds the ability to choose an arbitrary reference (commit id) just by typing (pasting)
    • Improves and enhances the checkout command — now renamed to switch for better clarity and to align with the new Git 2.23 commands
      • Adds the ability to create a local branch from a remote branch
      • Adds the ability to choose an arbitrary reference (commit id) just by typing (pasting)
  • Adds an all-new commit search experience, via the Git Commands (gitlens.gitCommands) or Search Commits (gitlens.showCommitSearch) commands
    • Adds the ability to match on more than one search pattern — closes #410
    • Adds case-[in]sensitive matching support — defaults to the new gitlens.gitCommands.search.matchCase setting
    • Adds support for regular expression matching — defaults to the new gitlens.gitCommands.search.matchRegex setting
    • Adds the ability to match on all or any patterns when searching commit messages — defaults to the new gitlens.gitCommands.search.matchAll setting
    • Adds the ability to show results in the Search Commits view or within the quick pick menu via a toggle button in the quick pick menu toolbar
    • Adds a Reveal Commit in Repositories View button to the quick pick menu toolbar
    • Adds a Show Commit in Search Commits View button to the quick pick menu toolbar
    • Adds keyboard navigation
      • right arrow — shows the selected commit in the Search Commits view, if there is no text in the quick pick menu
      • alt+right arrow — shows the selected commit in the Search Commits view
      • ctrl+right arrow, cmd+right arrow (macOS) — reveals the selected commit in the Repositories view
  • Adds a Reveal Commit in Repositories View (gitlens.revealCommitInView) command to reveal the current commit in the Repositories view — this can take a while, so it will show a progress notification with the ability to cancel the operation
    • Adds Reveal Commit in Repositories View command to the commit context menu in the views
    • Adds Reveal Commit in Repositories View command in commit quick pick menu
  • Adds a Show Commits within Selection in Search Commits View (gitlens.showCommitsInView) command to show all the commits within the current selection in the Search Commits view
  • Adds new actions options to the Git CodeLens
    • Adds a gitlens.showCommitsInView option to the recent change CodeLens to show the recent commit in the Search Commits view
    • Adds a gitlens.showCommitsInView option to the authors CodeLens to show the commits within the range of the CodeLens block in the Search Commits view
    • Adds a gitlens.revealCommitInView option to the recent change CodeLens to reveal the recent commit in the Repositories view
    • Adds a gitlens.revealCommitInView option to the authors CodeLens to reveal the primary author's commit in the Repositories view
  • Adds the Open Changes with Working File command to the inline toolbar for files in views
  • Adds the Open Revision command to the editor toolbar and tabs context menu when a revision file is active in the diff editor
  • Adds this Explore Repository from Revision command to the editor toolbar and tabs context menu when a revision file is active
  • Adds a Prune command to remotes in the Repositories view to prune remote references — closes #556 thanks to PR #815 by Zach Boyle (@zaboyle)
  • Adds ability to sort branches and tags in quick pick menus and views — closes #745
    • Adds a gitlens.sortBranchesBy setting to specify how branches are sorted in quick pick menus and views
    • Adds a gitlens.sortTagsBy setting to specify how tags are sorted in quick pick menus and views
  • Adds the Pull and/or Push command to current branch in the Repositories view if the current branch is not up to date with its upstream
  • Adds ability to copy the selected item's details to the clipboard using the standard copy shortcut key when focused on a GitLens view
  • Adds last commit date to branches in quick pick menus and views
  • Adds support to use the GitHub avatar (if available) for authors with @users.noreply.github.com email addresses — partially addresses #281 thanks to PR #814 by bolte-17 (@bolte-17)

Changed

  • Changes Stash All Changes commands in the Source Control view to toggle --keep-index appropriately — closes #698
  • Changes Ansible files to use document scope for CodeLens — thanks to PR #813 by Ahmadali Shafiee (@ahmadalli)
  • Changes fetch commands to use the fetch Git command
  • Changes pull commands to use the pull Git command
  • Changes push commands to use the push Git command
  • Changes stash commands to use the new stash Git command
  • Changes the Checkout command on branches, commits, and tags to use the switch Git command
  • Changes the Cherry Pick Commit (via Terminal) command to use the cherry-pick Git command
  • Changes the Merge Branch (via Terminal), and Squash Branch into Commit (via Terminal) commands to use the merge Git command
  • Changes the Rebase (Interactive) Branch (via Terminal), Rebase (Interactive) Branch to Remote (via Terminal), and Rebase to Commit (via Terminal) commands to use the rebase Git command
  • Changes the Reset to Commit (via Terminal) command to use the reset Git command
  • Changes the Revert Commit (via Terminal) command to use the revert Git command
  • Renames Checkout command to Switch for branches and tags for better clarity and to align with the new Git 2.23 commands
  • Renames Checkout command to Restore for commit/stash files for better clarity and to align with the new Git 2.23 commands
  • Renames Stashed Changes to Stashes or Stash depending on the context
  • Renames Copy * to Clipboard commands to Copy *
  • Renames Show Commit in View (gitlens.showCommitInView) command to Show Commit in Search Commits View
  • Renames Show File History in View (gitlens.showFileHistoryInView) command to Show in File History View
  • Rearranges the ordering and groupings of the view item context menus

Removed

  • Removes Show Commit Details from view item context menus
  • Removes Show File History from view item context menus

Fixed

  • Fixes #849 - Extra backslash in the hovers blame detail's link
  • Fixes #847 - Refresh button on Compare With Branch view is not working
  • Fixes #842 - List of changed files in comparison to working tree only shows changed files in comparison to HEAD
  • Fixes #828 - Version comparison to show welcome message is not future proof — thanks to PR #829 by Arunprasad Rajkumar (@arajkumar)
  • Fixes #821 - Wrong comparison order in the Compare view when using Compare [HEAD|Working Tree] With commands
  • Fixes #794 - Can't get back to settings page easily
  • Fixes #738 - Disable showWhatsNewAfterUpgrades notification
  • Fixes #723 (partially) - Top right tool loading/placement enhancement
  • Fixes issues with the Open Changes with Working File command when invoked from a stash
  • Fixes issue where the Open Line Changes with Previous Revision command would open the correct comparison in the diff editor
  • Fixes some issues with the Open Changes with Previous Revision and Open Changes with Next Revision commands when in the right or left side of the diff editor
  • Fixes an issue with branch sorting when the current branch was tree'd
  • Fixes issues with the Explore Repository from Revision, Open Revision, Open Files, Open Revisions, Open All Changes, Open All Changes with Working Tree commands in the latest VS Code
  • Fixes typo of "workbench.colorCustomization" in README — thanks to PR #823 by Kwok (@mankwok)

9.9.3 - 2019-08-06

Added

  • Adds an Add Remote command to the Remotes node of the Repositories view — closes #694 thanks to PR #802 by Zach Boyle (@zaboyle)

Changed

  • Reverses the order of comparisons in the Compare view for consistent comparisons results

Fixed

  • Fixes #812 - Regression in 9.9.2: Clicking changed file in Repository Browser opens diff view between WorkingTree <-> WorkingTree, not index

9.9.2 - 2019-08-01

Added

  • Adds a Checkout command to the current branch in the Repositories view which opens a quick pick menu to choose a new branch to checkout to

Fixed

  • Fixes #806 - file diff in two-dot branch compare should only show the changes in one branch
  • Fixes #756 - Merge commit shows only the changes from the last commit on those files
  • Fixes #809 - Wrong commit diff in file history
  • Fixes #685 - GitLens not loading for a single repository
  • Fixes #789 - Line blame annotations not working when vscode root is home dir and .gnupg dir is inaccessible
  • Fixes #649 - GitLens can't see the remote but git can
  • Fixes #798 - git pull/fetch all repositories
  • Fixes #805 - Version 9.9.1 breaks working tree comparison
  • Fixes an issue where the GitLens Compare view was shown when using the Select for Compare command in the Repositories view

9.9.1 - 2019-07-23

Fixed

  • Fixes #797 - Branch diff against master shows incorrect files in two-dot mode

9.9.0 - 2019-07-21

Added

  • Adds guided (step-by-step) access to common Git commands (and their flags) via the all-new Git Commands command (gitlens.gitCommands)
    • Quickly navigate and execute Git commands through easy-to-use menus where each command requires an explicit confirm step before executing
  • Adds Open All Changes, Open All Changes with Working Tree, Open Files, and Open Revisions commands to files changed nodes in the views — closes #760
  • Adds a new ${tips} format token to show an indicator if the commit is a tip of any branches or tags — closes #792

Changed

  • Improves performance and memory consumption
  • Changes the Checkout command on remote branches to create and checkout a new local branch rather than checkout a detached HEAD — closes #709
  • Changes folders in the views to expand by default when using Tree Layout

Fixed

  • Fixes #791 - Notification of unstashed changes in working directory on failed checkout
  • Fixes #795 - Commit quick access icons replaced with open file actions in File History View
  • Fixes issue with the JSON schema of a configuration setting

9.8.5 - 2019-07-10

Changed

  • Cleans up the layout and formatting of many quick pick menus

Fixed

  • Fixes issue where Search Commits from repositories in the Repositories view would incorrectly show a repository picker

9.8.4 - 2019-07-10

Added

  • Adds Switch to Two-dot Comparison and Switch to Three-dot Comparison commands to specify whether to use the symmetric difference (three-dot) notation or the range (two-dot) notation for the comparison — applies to all comparisons in the views

Changed

  • Changes the Switch to Working Tree Comparison and Switch to Branch Comparison commands to only affect the current comparison, rather than changing the gitlens.views.repositories.showBranchComparison setting

9.8.3 - 2019-07-09

Added

  • Adds working tree comparison support to the Compare Current Branch with <branch, tag, or ref> node within each repository in the Repositories view
    • Changes gitlens.views.repositories.showBranchComparison to also specify the type of comparison — either with the current branch or the working tree
    • Adds a Switch to Working Tree Comparison command or Switch to Branch Comparison command to the Compare Current Branch with <branch, tag, or ref> node
  • Adds the Open Revision command as an alt-click of the Open File command on files in the views
  • Adds the Open File command as an alt-click of the Open Revision command on files in the views

Changed

  • Changes fetch, pull, and push commands to be executed in parallel, rather than sequentially
  • Changes Search Commits command (gitlens.showCommitSearch) to prompt for a repository, if there is more than one

Removed

  • Removes gitlens.settings.mode setting as the interactive settings editor (via the GitLens: Open Settings command) will always show all settings now

Fixed

  • Fixes #776 - File history sidebar having "Open file" instead of "Open revision"
  • Fixes #692 - Can't open remote on bitbucket — thanks to PR #767 by Guillaume Rozan (@grozan)
  • Fixes a parsing issue with certain renamed files
  • Fixes some issues with emoji rendering

9.8.2 - 2019-06-10

Added

  • Adds a changes indicator (+x -x) to the File History view to quickly show the number of added and/or deleted lines

Changed

  • Preserve Show More expansions during file system or repository changes — avoids losing view expansion and selection
  • Changes to match authors exactly in the Contributors view

Fixed

  • Fixes #734 - Not working with VS Code Remote - SSH extension (fixes the broken hover image)
  • Fixes #751 - Git Command failed
  • Fixes #756 - Merge commit shows only the changes from the last commit on those files
  • Fixes issue with the Open Changes with Previous Revision command when run from the diff editor and the file has unstaged changes
  • Fixes an issue where view expansion and selection was getting lost with search and compare nodes
  • Fixes the Show More command in the File History and Line History views
  • Fixes a caching issue with file histories

9.8.1 - 2019-05-23

Fixed

  • Fixes a regression where the Copy Remote URL to Clipboard command fails to include the selected line range

9.8.0 - 2019-05-22

Added

  • Adds a new Compare Current Branch with <branch, tag, or ref> node to each repository in the Repositories view — closes #293
    • Compare Current Branch with <branch, tag, or ref> — optionally shows a comparison of the current branch to a user-selected reference
      • * Commits — lists the commits between the compared revisions
        • Expands to provide the message, author, date, and change indicator of each revision (commit)
          • Each revision (commit) expands to list its set of changed files, complete with status indicators for adds, changes, renames, and deletes
            • An inline toolbar provides quick access to the Open File, Copy Commit ID to Clipboard (alt-click for Copy Commit Message to Clipboard), and Open File on Remote (if available) commands
            • A context menu provides access to more common file revision commands
      • * Files Changed — lists all of the files changed between the compared revisions
  • Adds a Show a comparison of the current branch to a user-selected reference (gitlens.views.repositories.showBranchComparison) setting to specify whether to show a comparison of the current branch to a user-selected reference in the Repositories view
  • Adds a gitlens.advanced.useSymmetricDifferenceNotation setting to specify whether to use the symmetric difference (three-dot) notation or the range (two-dot) notation for comparisons — closes #330
  • Adds a Copy Remote URL to Clipboard command to commit quick pick menus

Changed

  • Changes Pull and Pull Repositories commands to just fetch the repository if the current branch has no tracking branch

Fixed

  • Fixes #734 - Not working with VS Code Remote - SSH extension
  • Fixes #739 - Breadcrumbs don't work on file revisions
  • Fixes #750 - Open file on GitHub does not include directory path
  • Fixes an issue with the Open Revision command in the quick pick menus not working properly

9.7.4 - 2019-05-15

Added

  • Adds a new experimental Incoming Activity node to each repository in the Repositories view (enabled via "gitlens.insiders": true) — closes #735
    • Incoming Activity — lists the recent incoming activity (merges and pulls) to your local repository
      • Provides the command, branch (if available), and date of each activity
        • A context menu provides access to the Refresh command
        • Each activity expands to list the commits added by the command
          • An inline toolbar provides quick access to the Compare with HEAD (alt-click for Compare with Working Tree), Copy Commit ID to Clipboard (alt-click for Copy Commit Message to Clipboard), and Open Commit on Remote (if available) commands
          • A context menu provides access to more common revision (commit) commands
          • Each revision (commit) expands to list its set of changed files, complete with status indicators for adds, changes, renames, and deletes
            • An inline toolbar provides quick access to the Open File, Copy Commit ID to Clipboard (alt-click for Copy Commit Message to Clipboard), and Open File on Remote (if available) commands
            • A context menu provides access to more common file revision commands

Fixed

  • Fixes issues with the Show More Actions button on the Details hover not working with renamed files
  • Fixes issues with the Open File, Open Files, Open All Changes with Working Tree, and Apply Changes commands in the views not working with renamed files
  • Fixes issues with the Open File, Open Files, and Apply Changes commands in the quick pick menus not working with renamed files
  • Fixes issues with the Show Stashed Changes command (gitlens.showQuickStashList) and multiple repositories

9.7.3 - 2019-05-11

Fixed

  • Fixes #740 - Opening untracked files from "files changed" section fails
  • Fixes issue where the Open Changes with Previous Revision command would compare the working file with HEAD even if there were no working file changes (now it will compare HEAD with the previous commit)
  • Fixes issue where the Open Changes, Open Changes with Working File, and Open Revision commands on files in the "files changed" section of the Repositories view would either fail or do nothing

9.7.2 - 2019-05-10

Fixed

  • Fixes #737 - failed to fetch commits and branches
  • Fixes #743 - Update activity bar icon size — thanks to PR #744 by Miguel Solorio (@misolori)

9.7.1 - 2019-05-06

Fixed

  • Fixes #736 - git command error on GitLens 9.7.0 (unknown '-M' option)

9.7.0 - 2019-05-05

Added

  • Adds support for Live Share presence
    • Adds an avatar presence indicator and an invite button to start a Live Share session with the code author
      Live Share presence
    • Adds presence status and an Invite to Live Share command to contributor nodes in the Repositories view
  • Adds a new Views Side Bar Layout section to the interactive settings editor (via the GitLens: Open Settings command) with 3 layout presets
    • Default — shows all the views together on the GitLens side bar
    • Source Control — shows all the views together on the Source Control side bar
    • Contextual — shows Repositories on the Source Control side bar, File and Line History on the Explorer side bar, and others on the GitLens side bar
  • Improves the accuracy and experience of the following:
    • Details hover
    • Changes (diff) hover
    • Open Changes with Previous Revision command
    • Open Line Changes with Previous Revision command — closes #719
    • Open Changes with Working File command
    • Open Line Changes with Working File command
    • Open Changes with Next Revision command
  • Adds support to the Details and Changes (diff) hovers to differentiate between staged and unstaged changed
  • Adds a Show All command to the Show More nodes in the views
  • Adds Show More support (i.e. paging) to the File and Line History views
  • Adds an improved experience when starting a new commit search or comparison
  • Adds the renamed path to the description and tooltip of file nodes in the views
  • Adds a gitlens.advanced.maxSearchItems setting to specify the maximum number of items to show in a search — closes #728
  • Adds a gitlens.defaultDateSource setting to specify whether commit dates should use the authored or committed date — closes #537 thanks to PR #707 by Mathew King (@MathewKing)
  • Adds a gitlens.advanced.similarityThreshold setting to specify the amount (percent) of similarity a deleted and added file pair must have to be considered a rename — closes #670 thanks to PR #714 by x13machine (@x13machine)
  • Adds visual tracking to the table of contents of the interactive settings editor to make it easier to navigate and keep context
  • Adds new documentation on how to use and customize GitLens' formatting settings: View Docs
  • Adds an ${originalPath} token for use with file formatting which provides the full file path of the original file, if renamed
  • Adds better logging to show current mode on startup and when changed — closes #725

Changed

  • Changes path collapsing to also collapse root paths when using the compact file layout in the views
  • Ensures file rename detection when getting the status of a repo or file

Removed

  • Removes searching for commits by changed occurrences (-S flag) as it is too confusing and searching by changes (-G flag) better matches user expectations — closes #730

Fixed

  • Fixes #729 - "Show more results" in search commit show less results
  • Fixes #716 - Browsing history of a renamed file fails in forward direction
  • Fixes #724 - GitService.getBranches very very very long
  • Fixes #625 - Branches in Repositories view shows some commit comment texts as branches
  • Fixes issues with keyboard navigation (alt+, and alt+.) in commit details of the file history quick pick menu
  • Fixes issues with keyboard navigation (alt+, and alt+.) in commit details of the branch history quick pick menu
  • Fixes issues when showing all results in various lists and views
  • Fixes issue with id collisions between branches, remotes, and tags in the Repositories view
  • Fixes the Line History view when there are uncommitted and/or unsaved changes
  • Fixes various issues when trying to find the working file from a commit
  • Fixes issues where the Changes (diff) hover wouldn't work properly with renamed files
  • Fixes an intermittent issue where hovers fail to show

9.6.3 - 2019-04-22

Added

  • Adds a gitlens.hovers.changesDiff setting to specify whether to show just the changes to the line or the set of related changes in the changes (diff) hover

Changed

  • Improves the maintaining of the line context when opening changes from the hovers
  • Improves the accuracy of the changes (diff) hover
  • Improves the rendering of the diff in the changes (diff) hover

Fixed

  • Fixes #697 - fixes git error handling for some linux OS'

9.6.2 - 2019-04-17

Fixed

  • Fixes #718 - Can't see changed files when comparing branches

9.6.1 - 2019-04-17

Added

  • Adds a Checkout command to file nodes in the views to replace the local file with the specified revision — closes #684
  • Adds a prompt to enable the view to the Show * View commands when the specified view is disabled — closes #710 & #711

Removed

  • Removes -m flag from git log when following renames (--follow), because it returns all merge commits, whether the file was changed or not

Fixed

  • Fixes #701 - Contributors shows no commits for mailmapped committer name
  • Fixes issues with the Line History view sometimes showing a duplicate and out of order commit
  • Fixes broken Open File command on the root node of the File History and Line History views
  • Fixes broken Open Revision command on status files of the Repositories view

9.6.0 - 2019-04-08

Added

  • Adds a new Contributors node to each repository in the Repositories view
    • Contributors — lists the contributors in the repository, sorted by contributed commits
      • Provides the avatar (if enabled), name, and email address of each contributor
        • An inline toolbar provides quick access to the Copy to Clipboard command
        • A context menu provides access to the Copy to Clipboard, Add as Co-author, and Refresh commands
        • Each contributor expands to list the repository's revision (commit) history filtered by the contributor
          • An inline toolbar provides quick access to the Compare with HEAD (alt-click for Compare with Working Tree), Copy Commit ID to Clipboard (alt-click for Copy Commit Message to Clipboard), and Open Commit on Remote (if available) commands
          • A context menu provides access to more common revision (commit) commands
          • Each revision (commit) expands to list its set of changed files, complete with status indicators for adds, changes, renames, and deletes
            • An inline toolbar provides quick access to the Open File, Copy Commit ID to Clipboard (alt-click for Copy Commit Message to Clipboard), and Open File on Remote (if available) commands
            • A context menu provides access to more common file revision commands
  • Adds a Collapse All command to the Repositories view — closes #688
  • Adds version links to the CHANGELOG — closes #617 thanks to PR #660 by John Gee (@shadowspawn)
  • Adds a gitlens.views.pageItemLimit setting to specify the number of items to show in a each page when paginating a view list. Use 0 to specify no limit

Changed

  • Changes related commit highlighting to only appear on cursor movement after file blame annotations are shown — to improve performance and reduce initial visual overload
  • Changes Open Revision from... (gitlens.openFileRevisionFrom) command to allow entering references
  • Improves the behavior of the Show More Commits & Show More Results commands — no longer loses the context of the last selected item before showing more
  • Improves the behavior of the Open Changes with Next Revision (gitlens.diffWithNext) command when in the diff editor
  • Improves the behavior of the Open Changes with Previous Revision (gitlens.diffWithPrevious) command when in the diff editor
  • Improves the behavior of the Open Changes with Working File (gitlens.diffWithWorking) command when in the diff editor
  • Renames Compare HEAD with Branch or Tag... (gitlens.diffHeadWithBranch) command to Compare HEAD with... (gitlens.diffHeadWith)
  • Renames Compare Working Tree with Branch or Tag... (gitlens.diffWorkingWithBranch) command to Compare Working Tree with... (gitlens.diffWorkingWith)
  • Renames Open Changes with Branch or Tag... (gitlens.diffWithBranch) command to Open Changes with... (gitlens.diffWithRef)
  • Renames Open Revision from Branch or Tag... (gitlens.openFileRevisionFromBranch) command to Open Revision from... (gitlens.openFileRevisionFrom)
  • Renames Compare Branch or Tag with... (gitlens.views.compare.selectForCompare) command to Compare References...
  • Renames Choose from Branch or Tag History... quick pick item to Show File History from... for better clarity and to reflect that references are now allowed
  • Changes to use Day.js instead of date-fns for a reduced bundle size

Removed

  • Removes the automatic suspension of the current line blame annotations while debugging — closes #382
  • Removes the requirement of prefixing reference comparisons with # — closes #690

Fixed

  • Fixes #683 - log.showSignature leads to stray files being displayed
  • Fixes #691 - Auto-expand tree view on Swap Comparison
  • Fixes #695 - Invalid URL in Open File in Remote when selecting origin/.. as comparison branch
  • Fixes the behavior of the Open Line Changes with Previous Revision (gitlens.diffLineWithPrevious) command to follow the line history much better
  • Fixes missing Compare References... (gitlens.views.compare.selectForCompare) from the command palette
  • Fixes font issues in the Welcome to GitLens and GitLens Settings pages due to changes to the webview CSS font variables provided by VS Code
  • Fixes the invite link to the VS Code Development Community Slack

9.5.1 - 2019-02-13

Added

  • Adds better tooltips for file revisions (gitlen:// uris) — includes the commit id
  • Adds an Open Revision from Branch or Tag... (gitlens.openFileRevisionFromBranch) command to open the revision of the current file from the selected branch — closes #646

Fixed

  • Fixes issues with the welcome page and the interactive settings in the latest vscode insiders build

9.5.0 - 2019-02-06

Added

  • Adds a mailto: link to the author on the commit details hover — closes #642
  • Adds support for customizing the layout of the commit details hover
    • Adds a gitlens.hovers.detailsMarkdownFormat setting to specify the format (in markdown) of the commit details hover
  • Adds the author's e-mail to the tooltip of commits in the views — closes #642
  • Adds a new author e-mail format token (${email}) — closes #642
    • Supported in the following settings: gitlens.blame.format, gitlens.currentLine.format, gitlens.hovers.detailsMarkdownFormat, gitlens.views.commitFormat, gitlens.views.commitDescriptionFormat, gitlens.views.stashFormat, gitlens.views.stashDescriptionFormat, and gitlens.statusBar.format

Changed

  • Changes the sorting of remotes in the Repositories view to sort the default remote first
  • Changes relative date formatting of the last fetched date of repositories in the Repositories view to instead use an absolute format and will additionally add the time of day if less than a day has passed
    • This avoids having to periodically refresh the repository (which causes all of its children to re-render) in order to update the relative time

Fixed

  • Fixes #591 - GitLens Error: Unable to open
  • Fixes #620 - Wrong URL to open commit on Azure DevOps if cloned via SSH — thanks to PR #621 by Yan Zhang (@Eskibear)
  • Fixes #626 - Branch names with only digits always appear first — thanks to PR #627 by Marc Lasson (@mlasson)
  • Fixes #631 - Remotes fail to show in gui
  • Fixes #633 - Compare File with Previous Revision doesn't work if path contains '#'
  • Fixes #635 - Show more commit not working properly
  • Fixes an issue where the Open File, Open File on Remote, and Copy Remote URL to Clipboard commands didn't always work on changed files in the Repositories view
  • Fixes an issue where the default remote wasn't used first to provide automatic issue linking

9.4.1 - 2019-01-08

Fixed

  • Reverts #606 as it causes views to lose their expansion state

9.4.0 - 2019-01-08

Added

  • Adds pinning of comparisons in the Compare view — pinned comparisons will persist across reloads
  • Adds an Open in Terminal command to repositories in the Repositories view

Changed

  • Renames the Copy Remote File URL to Clipboard command (gitlens.copyRemoteFileUrlToClipboard) to Copy Remote URL to Clipboard for brevity

Fixed

  • Fixes #606 - ID for xxx is already registered?!
  • Fixes #607 - Open file in Remote Doesn't URL encode
  • Fixes #608 - Add an option to change the abbreviated commit SHA length — thanks to PR #611 by Skybbles // L5474 (@Luxray5474)
  • Fixes #613 - Change Copy Remote URL to Clipboard to always copy a permalink (e.g. revision link)

9.3.0 - 2019-01-02

Added

  • Adds favoriting of repositories and branches in the Repositories view to allow for better (user-customized) sorting
  • Adds the ability to specify a default remote selection when using the Open * in Remote commands — closes #504
    • Adds Set as Default and Unset as Default commands to remotes in the Repositories view
  • Adds the ability to turn on file annotations (blame, heatmap, and recent changes) via user-defined modes — closes #542
  • Adds the ability to stage and unstage files by folders in the Repositories view — closes #599 thanks to PR #600 by Tony Brix (@UziTech)
    • Adds Stage All Changes and Unstage All Changes commands to folders in the Repositories view

9.2.4 - 2018-12-26

Added

  • Adds a repository indicator in the Repositories view when we are unable to detect repository changes — related to #583
  • Adds gitlens.defaultDateShortFormat setting to specify how short absolute dates will be formatted by default

Changed

  • Changes the fetch date in the Repositories view to respect the date style setting (gitlens.defaultDateStyle) and uses the new gitlens.defaultDateShortFormat setting for formatting
  • Avoids caching when we are unable to detect repository changes — related to #583

Fixed

  • Fixes #605 — Show More Commits not working

9.2.3 - 2018-12-21

Added

  • Adds a gitlens.views.showRelativeDateMarkers setting to specify whether to show relative date markers (Less than a week ago, Over a week ago, Over a month ago, etc) on revision (commit) histories in the views — closes #571

Changed

  • Changes the icon of the Open Changes with Working File command (gitlens.diffWithWorking) to align with VS Codes new Open Changes icon
  • Splits the gitlens.views.avatars setting into gitlens.views.compare.avatars, gitlens.views.repositories.avatars, and gitlens.views.search.avatars settings for more granular control

9.2.2 - 2018-12-19

Changed

  • Renames the Stash Changes command (gitlens.stashSave) to Stash All Changes and adds a new Stash Changes command (gitlens.stashSaveFiles)
  • Changes the icon of the Stash All Changes command (gitlens.stashSave) — closes Microsoft/vscode#64423

Fixed

  • Fixes #598 — Apply changes when comparing a file from two branches is not working

9.2.1 - 2018-12-16

Changed

  • Switches to use the new built-in clipboard apis — closes #593
  • Improves the error messaging when applying a stash, that won't apply cleanly, by including the git output in the message

Fixed

  • Fixes missing icon when using the alt-command of the Toggle File Blame Annotations command

9.2.0 - 2018-12-13

Added

  • Improves the commit search experience
    • Remembers and restores the last commit search string
    • Adds a Search Commits command to the search results inline toolbar
    • Reopens the commit search when clicking on a search results without results
  • Adds a Collapse command to the toolbars of the Compare and Search Commits views — closes #383
  • Adds support for the new ability to have descriptions on view nodes — provides a much cleaner layout
    • Adds a gitlens.views.commitFileDescriptionFormat setting to specify the description format of a committed file in the views
    • Adds a gitlens.views.commitDescriptionFormat setting to specify the description format of committed changes in the views
    • Adds a gitlens.views.stashFileDescriptionFormat setting to specify the description format of a stashed file in the views
    • Adds a gitlens.views.stashDescriptionFormat setting to specify the description format of stashed changes in the views
    • Adds a gitlens.views.statusFileDescriptionFormat setting to specify the description format of the status of a working or committed file in the views
  • Adds a gitlens.views.repositories.compact setting to specify whether to show the Repositories view in a compact display density — closes #571

Fixed

  • Fixes #559 — Html encoding issues with the empty state of the Compare and Search Commits views
  • Fixes #574 — Apply Changes not working because of whitespace conflicts
  • Fixes #589 — Bad revision for stash

9.1.0 - 2018-12-12

Added

  • Adds more detailed branch tracking status (if available) to the Branches list in the Repositories view
    • * Commits Behind — quickly see and explore the specific commits behind the upstream (i.e. commits that haven't been pulled)
      • Only provided if the current branch is tracking a remote branch and is behind it
    • * Commits Ahead — quickly see and explore the specific commits ahead of the upstream (i.e. commits that haven't been pushed)
      • Only provided if the current branch is tracking a remote branch and is ahead of it
  • Adds the date and a changes indicator (+x ~x -x) to stashed changes in GitLens views (uses the new ${changes} token in the gitlens.views.stashFormat setting)
  • Adds the changed file status (added, modified, renamed, deleted, etc) to the tooltip of each revision in the File History and Line History views
  • Adds Git extended regex support to commit searches
  • Adds control over the menu commands contributed to the Source Control side bar to the GitLens Interactive Settings (via the gitlens.menus setting)

Changed

  • Changes the Show Revision Details command (gitlens.showQuickRevisionDetails) to show file commit details
  • Changes the alt-command of the Toggle File Blame Annotations command (gitlens.toggleFileBlame) to be the Toggle File Heatmap Annotations command (gitlens.toggleFileHeatmap)
  • Changes searching for commits by message to be case-insensitive
  • Renames the Explore the Repository from Here command (gitlens.views.exploreRepoRevision) to Explore Repository from Here
  • Reworks the layout of some contributed menu commands

Fixed

  • Fixes an issue where gravatar icons would sometimes not show up — thanks to PR #579 by Ian Wilkinson (@sgtwilko)
  • Fixes #33 — Commit messages can causes markdown formatting in hovers
  • Fixes #501 — Azure DevOps ssh remotes aren't handled properly
  • Fixes #523 — File History doesn't show all commits on file
  • Fixes #552 — "Open Line Changes with..." doesn't work for renamed files
  • Fixes #566 — History error with UNC
  • Fixes #572 — Explorer can't expand some branch folders
  • Fixes #584 — Unexpected results when opening diff from file history
  • Fixes #588 — Output channel doesn't exist with gitlens.outputLevel default
  • Fixes an issue where comparing a file with its staged revision doesn't show any content
  • Fixes an issue where the workspace folder added by the Explore Repository from Here command (gitlens.views.exploreRepoRevision) would fail to load in certain cases
  • Fixes an issue where applying changes of an added file or an untracked file (in a stash) would fail

9.0.3 - 2018-12-06

Fixed

  • Fixes #576 — Fails to load with older versions of git
  • Fixes an issue where the Copy Commit Message to Clipboard command fails (and probably others too) — a regression caused by the attempted fix for #568

9.0.2 - 2018-12-05

Added

  • Adds a Directory Compare All Changes (gitlens.diffDirectoryWithHead) command to open the configured git difftool to compare the working directory with HEAD — closes #569

Changed

  • Renames Open Changes (with difftool) command to Open All Changes (with difftool) when shown on the SCM group context menu

Fixed

  • Fixes #565 — Regression: Submodules don't work properly (missing repo in view, file and inline blame, etc)
  • Fixes #528 — Remotes not showing, being filtered on domain and file, but not complete path
  • Fixes an issue where Close Repository command didn't work
  • Fixes issues with external files (files not in one of the workspace folders) showing up as a new repository when over a Live Share session

9.0.1 - 2018-12-02

Fixed

  • Fixes issues with errors when listing history in repos without any tags

9.0.0 - 2018-12-02

Added

  • Adds GitLens over Visual Studio Live Share
    • Live Share guests will now have read-only access to GitLens' features, provided both the host and guest have GitLens installed
    • Adds a gitlens.liveshare.allowGuestAccess setting to specify whether to allow guest access to GitLens features when using Visual Studio Live Share
  • Adds a new Git virtual file system provider for the gitlens: scheme — closes #430
    • Replaces GitLens' internal handling of file revisions, which allows for better performance, as well as avoiding the use of temp files. It also provides a much better experience when dealing with file encodings, images, etc.
  • Adds an Explore the Repository from Here (gitlens.views.exploreRepoRevision) command which opens a virtual workspace folder (uses the new Git virtual file system provider) for the repository at the specified point in time (commit, branch, tag, etc) — closes #398
  • Adds a new Repositories view, formerly the GitLens view, to visualize, navigate, and explore Git repositories — closes #456, #470, #494
    Repositories view
    • Provides a cleaner information-rich view of your opened repositories, more git commands (fetch, push, pull, checkout, stage, unstage, etc), better visibility and accessibility of existing features, and more
    • Adds a gitlens.views.repositories.autoReveal setting to specify whether to automatically reveal repositories in the Repositories view when opening files
  • Adds a new File History view, formerly the History view, to visualize, navigate, and explore the revision history of the current file
    File History view
    • Provides similar features to the former History view as well as quickly toggling file tracking on and off, changing the base (branch, tag, commit, etc) of the file's history, and more
  • Adds an all-new Line History view to visualize, navigate, and explore the revision history of the selected lines of current file — closes #354
    Line History view
    • Provides similar features to the File History view including quickly toggling line tracking on and off, changing the base (branch, tag, commit, etc) of the selected lines' history, and more
  • Adds an all-new Search Commits view to search and explore commit histories by message, author, files, id, etc — closes #455
    Search Commits view
    • Provides somewhat similar features to the former Results view as well as it is now a persistent view, makes it easier to start a commit search, and more
  • Adds an all-new Compare view to visualize comparisons between branches, tags, commits, and more
    Compare view
    • Provides somewhat similar and powerful features to the former Results view as well as it is now a persistent view, makes it easier to start a comparison, and more
  • Reduces the overhead of all GitLens views — GitLens now only tracks changes and updates the views if they are visible, collapsed or hidden views should have almost zero overhead
  • Adds relative date markers (Less than a week ago, Over a week ago, Over a month ago, etc) to revision (commit) histories in GitLens views
  • Adds branch and tag tip markers to revision (commit) histories in GitLens views — closes #560
  • Adds a changes indicator (+x ~x -x) to commits in GitLens views (uses the new ${changes} token