Skip to content

Files

Latest commit

 

History

History
6211 lines (4568 loc) · 445 KB

CHANGELOG.md

File metadata and controls

6211 lines (4568 loc) · 445 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.

Added

  • Adds AI model status and model switcher to the Home view (#4064)
  • Adds Anthropic Claude 3.7 Sonnet model for GitLens' AI features (#4101)
  • Adds Google Gemini 2.0 Flash-Lite model for GitLens' AI features (#4104)
  • Adds integration with Bitbucket Cloud (#3916)
    • shows enriched links to PRs and issues #4045
    • shows Bitbucket PRs in Launchpad #4046
    • supports Bitbucket issues in Start Work and lets associate issues with branches #4047
  • Adds ability to control how worktrees are displayed in the views
    • Adds a gitlens.views.worktrees.worktrees.viewAs setting to specify whether to show worktrees by name, path, or relative path
    • Adds a gitlens.views.worktrees.branches.layout setting to specify whether to show branch worktrees as a list or tree, similar to branches

Changed

  • Curated the list of AI models available for GitLens' AI features

Fixed

  • Fixes GitLens gets stuck after rebase (#4078)
  • Fixes Bitbucket Server remote - "scm/" path prefix not removed (regression) (#3218)
  • Fixes avoid eagerly getting "full" commit details for inline blame ([#4115])(#4115))
  • Fixes large commit messages work poorly on Commit Graph (#4100)
  • Fixes Show * View commands fail intermittently (#4127)

16.3.2 - 2025-02-21

16.3.1 - 2025-02-20

Fixed

  • Fixes Generate Commit Message Error - Anthropic (#4071)
  • Fixes Settings editor breaking when dragging it to a new tab group (#4061)
  • Fixes regression where hovering over the Graph WIP row doesn't show up anymore (#4062)
  • Fixes Inspect & Graph Details: autolinks rendering when enabled setting is false (#3841)
  • Fixes comparison with Merge Target on Home fails to open a valid comparison (#4060)
  • Fixes closing the walkthrough on Home from opening the walkthrough (#4050)
  • Fixes horizontal scrollbar from showing up on the old Home view (#4051)
  • Fixes a failure when copying changes to a worktree (#4049)

16.3.0 - 2025-02-11

Added

  • Adds rich support for Azure DevOps — closes #3902
    • Adds integration status and connection flows to the Home view; closes #3976
    • Adds autolinks, issues and pull requests in the Commit Graph and Home view; closes #3977
    • Adds pull request support in Launchpad — closes #3978
    • Adds issue support to Start Work; closes #3979
  • Adds new AI-powered ability to generate a stash message from the changes in the Stash commands
  • Adds and expands AI model support for GitLens' AI features
    • Adds DeepSeek V3 and R1 models — closes #3943
    • Adds o3-mini and o1 OpenAI models
    • Adds Gemini 2.0 Flash, Gemini 2.0 Flash-Lite, Gemini 2.0 Pro, and Gemini 2.0 Flash Thinking models
    • Adds dynamic model loading for GitHub Models and HuggingFace models
    • Adds a gitlens.ai.modelOptions.temperature setting to specify the temperature (randomness) for AI models that support it
    • Adds a Switch Model button to the AI confirmation prompts
  • Adds Windsurf support — closes #3969
  • Adds "pro" indicators for applicable integrations — closes #3972

Changed

  • Improves performance of updates to active and recent branches on the Home view

Fixed

  • Fixes #3952 - Interactive rebase doesn't work in GL without VS Code added to path
  • Fixes #3938 - GitLens automatically initiating an external sign-in after install on vscode.dev
  • Fixes #3946 - Home View doesn't update repo state changes made when hidden
  • Fixes #3940 - Commit Details: issue autolinks can disappear after enrichment
  • Fixes #4035 - Repo is lost when "Generate commit" is requested

16.2.1 - 2025-01-21

Fixed

  • Fixes #3954 - Graph breaks when opening in an editor tab
  • Fixes uncaught errors with cloud self-hosted integrations

16.2.0 - 2025-01-17

Added

  • Adds richer support for GitHub Enterprise and GitLab Self-Managed — closes #3901, #3934
    • Adds pull request/merge request support in Launchpad — closes #3923
    • Adds issue support to Start Work
    • Adds integration status and connection flows to the Home view
  • Adds new ability to search for a GitLab merge request in the Launchpad — closes #3788
  • Adds merge target's merged status to the Home view
    • GitLens will attempt to determine if the current branch has been merged into its the merge target branch (or the local branch of the merge target)
  • Overhauls the Visual File History
    • Improves commit bubble sizing to better handle outliers
    • Improves hover content and interations
    • Adds explicit zoom in/out buttons and changes mouse zoom to use the mouse wheel — when zoomed, drag to scrub through the history
    • Optimizes chart resizing and axis label rendering with author indicators, and re-adds the legend to the view
  • Adds a new Folder History > Open Visual Folder History command to folders in the Explorer view, Source Control view, and other GitLens views
  • Adds new ability to see and act upon a "paused" Git operation, e.g. merge, rebase, cherry-pick, revert, across the Commits, Commit Graph, and Home views — closes #3913
    • Adds a new banner on the Commit Graph and updates the banner on Home with actions to continue, skip, or abort the operation
    • Adds Continue, Skip, and Abort actions to the Commits view
  • Adds a GitLens Home button to the Commit Graph header to go to the Home view title section — closes #3873
  • Adds a new Hidden Branches / Tags dropdown button next to the Branch Visibility dropdown in the Commit Graph toolbar — closes #3101
  • Adds a new Contributors section to comparison results in the views — quickly see who contributed changes in the specific range with statistics
  • Adds statistics to contributors in the GitLens views when enabled
  • Adds AI model name in commit message generation notifications

Changed

  • Improves branch status icons/indicators on the Home view
  • Improves branch contributors avatars on the Home view; improved scoring and ordering
  • Improves performance of loading/reloading the Home view
  • Improves performance of detecting paused Git operations, e.g. merge, rebase, cherry-pick, revert
  • Changes GitLens to be XDG-compatible — closes #3660
  • Changes GitLens "reset" command to no longer use/open a terminal — closes #3533
  • Changes to format numbers, e.g. counts, with internationalization (i18n) support
  • Improves command ordering on branch context menus
  • Changes File History context menu to Folder History on folders in the Explorer view Adds Open Visual Folder History to explorer folders Adds Open [Visual] Folder History to folders in views

Fixed

  • Fixes #3915 - Closing a split editor with annotations causes the Clear Annotations button to get stuck
  • Fixes #3914 - Attempting to clear a file annotation on a split file w/o the annotation no-ops
  • Fixes #3911 - Avoid Home opening when first-install isn't reliable (e.g. GitPod)
  • Fixes #3888 - Graph hover should disappear when right-clicking a row
  • Fixes #3909 - GitLens "Pull with Rebase" is not rebase, but merge
  • Fixes #3476 - Can't show commit graph in floating window
  • Fixes an issue with unpin button visibility in the File History view
  • Fixes intermittent issue with greater reliability of webview requests
  • Fixes an issue with autolink enrichment for issues
  • Fixes issues with incorrect aggregate contributor stats

16.1.1 - 2024-12-20

Added

  • Adds action to the launchpad status on PR's on Home to open the Launchpad directly to the item

Changed

  • Improves draft PR handling and launchpad grouping

Fixed

  • Fixes #3899 - custom autolinks not being detected
  • Fixes owner avatars from getting lost (progressively) on refresh of the Home view
  • Fixes launchpad status icon for 'waiting for review' state on Home
  • Fixes missing Delete Branch... command from branches on worktrees in the Branches view

16.1.0 - 2024-12-19

Added

  • Remodels and polishes the Home view:
    • Adds a new header bar with information, controls, and management for your account and integrations
    • Branch cards are now grouped, expandable sets which include information on the branch, its associated pull requests and issues
    • Adds "merge target" status to the active branch
      • Includes the status of the branch relative to the branch that it is most likely to be merged into (its "merge target")
      • Includes pre-emptive conflict detection with the merge target and Merge and Rebase actions
    • Adds merge and rebase status to the active branch while in a merge or rebase
    • Adds a Commit action which automatically generates a commit message and focuses the SCM commit box
    • Integrates Launchpad status directly into pull requests and adds colored indicators reflecting Launchpad statuses: "Mergeable", "Blocked", and "Needs Attention"
    • Adds upstream status information to branch cards
    • Adds more pull request actions:
      • Open Pull Request Changes which opens a pull request's changes in a multidiff editor tab
      • Compare Pull Request which opens a pull request in the Search & Compare view
      • Open Pull Request Details which opens a pull request in the Pull Request view
    • Adds the ability to share your working changes with teammates
    • Increases the prominence of the "branch owner's" avatar
      • The "branch owner" is the person who contributed the most changes across the commits between the branch's HEAD and branching point
    • Adds contextual tooltips throughout
  • Adds pre-emptive conflict detection to Merge and Rebase git commands
  • Adds the ability to show stashes in the Commits, Branches and Worktrees views — off by default, can be toggled in the View Options context menu of each view
  • Adds the ability to show remote branches (for the default remote) in the Branches view — off by default, can be toggled in the View Options context menu of each view
  • Adds the ability to associate issues with branches — closes #3870
    • Shows issues associated with branches in Home view — closes #3806
    • Shows issues associated with branches in the Commit Graph
    • Adds a new command Associate Issue with Branch... command to the command palette and to the context menus of branches in views and the Commit Graph allowing the user to associate an issue with an existing branch — closes #3884
    • Associates issues chosen in the Start Work command with branches created for them
  • Adds the ability to get autolinks for branches via the branch name — closes #3547
  • Adds GitLab issues to the issues list in the Start Work command when GitLab is connected — closes #3779
  • Adds the latest Gemini models to AI features
  • Adds support for deep links to the Home view
  • Adds gitlens.advanced.caching.gitPath setting to specify whether to cache the git path — closes #2877

Changed

  • Improves the Launchpad search experience — closes #3855:
    • Adds a Search for Pull Request... option that allows the user to search for pull requests outside of the listed ones in Launchpad. Currently supports GitHub pull requests, with GitLab soon to be added.
    • Pasting a pull request URL which does not match any listed Launchpad issues will automatically trigger a GitHub search for the pull request
    • When in provider search mode, adds a Cancel Searching option which will restore the original list of pull requests. Clearing the search input will automatically cancel the search.
  • Improves the Start Work flow and user experience — closes #3807:
    • Splits the Start Work button into two buttons, a Start Work on an Issue button for creating a branch from an issue, and a button for creating a branch without an associated issue — closes #3808
    • Updates the command flow so that an issue is selected first, and the option to create a worktree is presented after creating the branch — closes #3809
    • Adds an integration connection button to the title bar — closes #3832
    • Adds a quickpick option to connect additional integrations when no issues are found — closes #3833
    • Rewords the placeholder text for better clarity when choosing a base for the new branch — closes #3834
    • Adds hover tooltip on issues showing their descriptions
    • Improves tooltips on "Open in Remote" icon
  • Refines commit/file stats formatting and improves coloring and formatting in tooltips
  • Moves the Commit Graph filter commits toggle into the left of the search bar
  • Improves the responsiveness of the Worktrees view to changes in relevant state
  • Improves the HEAD indicator icon to align more with VS Code
  • Updates prep-release reference — thanks to PR #3732 by Emmanuel Ferdman (@emmanuel-ferdman)

Fixed

  • Fixes #3747 - Rebase Current Branch onto Branch incorrectly shows that the current branch is caught up to the destination
  • Fixes #3836 - Back button in Start Work goes to the wrong step
  • Fixes #3791 - Pin/snooze in Launchpad trigger a full refresh and are no longer optimistic
  • Fixes #3886 - Jira orgs/projects accumulating size in global storage
  • Fixes #3849 - Launchpad view state does not sync properly when connecting/disconnecting integrations
  • Fixes some cases where issues are not properly restricted to open repositories in Start Work
  • Fixes issue bodies missing on Jira issue items in Start Work
  • Fixes some Jira issues missing in Start Work
  • Fixes Jira integration failing to fetch issues for all organizations when there is an issue with one of the organizations
  • Fixes duplicate generic autolinks appearing in Commit Details when the enriched version is shown
  • Fixes the worktree icon in the Commit Graph
  • Fixes hovers in the Commit Graph to correctly show branch/tag tips and additions/deletions when the Changes column is enabled
  • Fixes incorrect subscription label in the Account section when signed out

16.0.4 - 2024-11-25

Changed

  • Reduces the size of the Commit Graph webview bundle which reduces memory usage and improves startup time — ~29% smaller (861KB -> 1209KB)

Fixed

  • Fixes #3794 - Interactive rebase on the same branch is not working

16.0.3 - 2024-11-22

Changed

  • Improves actions and workflows on the new Home view
  • Improves the "Start Work" experience

16.0.2 - 2024-11-18

Changed

  • Changes to expand the GitLens view after upgrading (one time)

16.0.1 - 2024-11-15

Added

  • Adds context menu command in Commit Graph to reset Current Branch to a tag.

Changed

  • Changes the Search & Compare view to be separate (detached) from the new grouped GitLens view

Fixed

  • Fixes Home's Recent section being hidden when there are no recent items

16.0.0 - 2024-11-14

Added

  • Adds the ability to group GitLens views into a single GitLens view in the Source Control sidebar
    • Includes Commits, Branches, Remotes, Stashes, Tags, Worktrees, Contributors, Repositories, Search & Compare, and Launchpad views
    • Switch views by clicking on the specific view icons in the grouped GitLens view header
    • Grouped views can be separated (detached) from the grouped GitLens view via context menu commands from the view header
    • Detached views can be regrouped by clicking the close (x) icon in the view header
    • Adds a new gitlens.views.scm.grouped.default setting to specify the default view to show in the grouped GitLens view on new workspaces/folders (otherwise the last selected view is remembered)
    • Adds a new gitlens.views.scm.grouped.views setting to specify which views to show in the grouped GitLens view
  • Adds a completely reimagined Home view
    • Active section:
      • Shows your current repository, branch, and repository state
      • Actions for syncing (push, pull, fetch), switching repos/branches, and viewing working directory changes
    • Launchpad section:
      • Shows pull requests that need your review, are blocked, or are ready to merge
      • Start work action to begin a new branch or worktree, or generate one from an existing issue
    • Recent section: return to previous work by showing recent branches, worktrees, and PRs with activity for your chosen timeframe
  • Adds Start Work command that opens a quick pick to initiate different flows for starting new work — closes #3621
    • Start from an issue from GitHub or Jira (other integrations coming soon) and create a branch and/or worktree
  • Adds new ability to search for a GitHub PR in the Launchpad — closes #3543, #3684
  • Adds a new Filter Commits button to the Commit Graph toolbar — closes #3686
    • When toggled while searching the graph, it will be filtered to show only commits matching the search query
  • Adds and expands AI support for GitLens' AI features, now out of experimental and in preview
    • Refines and improves commit message generation and explaining changes, through better prompting and context
    • Adds new model support from GitHub Copilot when installed — no api key needed
    • Adds the latest OpenAI and Claude models
    • Adds new models from xAI, GitHub Models, and HuggingFace
  • Adds a new Launchpad view, now out of experimental mode — closes #3615:
    • Remembers the collapsed/expanded state of groups and auto-expands the Current Branch group & item, if applicable
    • Reflects changes better, including pinning and snoozing items
    • Pinned items should now appear above non-pinned items in their respective groups
  • Adds new all-new onboarding walkthrough — closes #3656
  • Adds new deep links to certain GitLens features and views — closes #3679
    • Adds support for deep links to the GitLens walkthrough — closes #3677
    • Adds support for deep links to Launchpad — closes #3678
    • Adds support for deep links to the Commit Graph, Worktrees, Inspect, and Cloud Patches — closes #3703
  • Adds Copy Changes (Patch) command to the context menu of branch comparisons and their files in the Commits, Branches, and Remotes views
  • Adds an Upgrade and Switch to Release Version to the expiration notification when using the pre-release of GitLens

Changed

  • Changes the, no account, 3-day preview experience of GitLens Pro to be 3 non-consecutive days on the Commit Graph
  • Changes the GitLens Pro 7-day trial to be 14 days, and 30 days if you invite a teamate
  • Improves Launchpad & the Launchpad view — closes #3614:
    • Adds Pin and Snooze buttons to the header item in the action step
    • Draft pull requests for which the current user's review is needed are now also shown in the "Needs Your Review" group, with a draft icon
    • Renames Switch to Branch or Worktree option to Switch to Branch, since it already includes options to create a worktree in the action flow
  • Improves the open in worktree action flow — closes #3549:
  • Changes to open a multi-diff editor of the changes when opening a new worktree from a PR to make reviewing easier — #3734
  • Improves the Explain panel in Inspect and Graph Details with markdown formatting
  • Changes how GitLens handles creating and deleting tags to avoid using the terminal — #3670
  • Improves quick pick workflows when no repositories are open
  • Renames GK Workspaces (GitKraken Workspaces) to Cloud Workspaces
  • Improves revealing items in the GitLens views
  • Limits buffering during logging to reduce memory usage

Fixed

  • Fixes #3549 - Webviews can have issues with high contrast themes
  • Fixes #3133 - Infinite error loop when pushing stash from GUI
  • Fixes branch creation and switch quickpicks failing to close when a worktree is created during the flow
  • Fixes some cases where Launchpad can fail to detect a connected integration
  • Fixed issues with renamed file status on comparisons and pull requests and ensures that renamed files get returned in file status and revision content git operations
  • Fixes issues with failing to delete stored state
  • Fixes issues with logging on some failure cases
  • Fixes issues with log scope tracking

Removed

  • Removes the GitLens Welcome view in favor of the new onboarding walkthrough experience

15.6.3 - 2024-11-05

15.6.2 - 2024-10-17

Fixed

  • Fixes #3680 - GitLens Settings page (via GitLens: Open Settings) has double-encoded Html entities
  • Fixes popover menu background colors on the Commit Graph
  • Fixes #3646 - Interactive Rebase interface partially unreadable in high contrast dark color theme

15.6.1 - 2024-10-14

Fixed

  • Fixes #3650 - "Create & Switch to Local Branch" from remote branch no longer prefills local branch name to match remote branch name
  • Fixes #3651 - "Open on Remote (Web)" does not use tracked branch name
  • Fixes #3657 - Creating a worktree from within a worktree chooses the wrong path
  • Fixes #3090 - Manually created empty bare clone repositories in a trusted directory crash worktree view since LocalGitProvider.findRepositoryUri returns just ".git" — thanks to PR #3092 by Dawn Hwang (@hwangh95)
  • Fixes #3667 - Makes Launchpad search by repo name
  • Fixes failure to prompt to delete the branch after deleting a worktree when a modal was shown (e.g. when prompting for force)
  • Fixes issues when git fails to delete the worktree folder on Windows

15.6.0 - 2024-10-07

Added

  • Adds Cursor support — closes #3222
  • Adds monospace formatting in commit messages — closes #2350
  • Adds a new ${authorFirst} and ${authorLast} commit formatting tokens that can be used in inline blame, commit hovers, etc — closes #2980
  • Adds a new Create New Branch button to the Commit Graph toolbar — closes #3553
  • Adds new ability to force push from the Commit Graph toolbar — closes #3493
  • Adds a new gitlens.launchpad.includedOrganizations setting to specify which organizations to include in Launchpad — closes #3550
  • Adds repository owner/name and code suggest to hovers on the experimental Launchpad view

Changed

  • Integrates the GitKraken Account view into the bottom of the Home view as a collapsible section — closes #3536
  • Changes the new Commit Graph sidebar to be enabled by default; use the gitlens.graph.sidebar.enabled settings to disable it
  • Changes how GitLens handles creating and renaming branches to avoid using the terminal — refs #3528
  • Changes patch generation (e.g. cloud patches, code suggest, Copy as Patch, Copy WorkingChanges to Worktree..., etc) to automatically include untracked files
  • Improves Switch, Open in Worktree, and deeplink and Launchpad workflows
    • Reduces prompts for locating repositories which the user has previously opened — closes #3555
    • Improves automatic detection of matching repositories for pull requests — closes #3627
    • Automatically fetches the repository when needed rather than prompting the user
  • Improves the integration connection indicator and connection button on the Commit Graph — closes #3538

Fixed

  • Fixes #3548 - Change the current branch icon on the Commit Graph to a worktree icon if its on a worktree
  • Fixes #3592 - Connecting to an integration via Remotes view (but likely others) doesn't work
  • Fixes #3571 - Gitlens fails to register buttons on top-right corner — thanks to PR #3605 by Jean Pierre (@jeanp413)
  • Fixes #3617 - Auto-links not working for alphanumberic issue numbers
  • Fixes #3573 - 'Create Branch in Worktree' option in 'Create Branch' shows a repo picker if you have multiple repos open
  • Fixes #3612 - Prevents cloud integration sync process from opening gkdev connect page/flow
  • Fixes #3519 - Add fallback/cutoff to our backend calls similar to how we handle GitHub queries
  • Fixes #3608 - Integration connection page opening on every launch of VS Code and on profile change
  • Fixes #3618 -Reauthentication not working for cloud integrations
  • Fixes an issue where virtual repositories for GitHub PRs from forks wouldn't load properly
  • Fixes an issue where deleting a worktree would not always remove the worktree from the view
  • Fixes actions not working on Launchpad items with special characters in their branch name
  • Fixes Open in Worktree command sometimes showing an unnecessary worktree confirmation step
  • Fixes some instances where the progress notification lingers after canceling when connecting an integration

Engineering

  • Adds end-to-end testing infrastructure using Playwright
  • Adds vscode-test to run unit-tests — closes #3570

15.5.1 - 2024-09-16

Fixed

  • Fixes #3582 - "Delete Branch" option is sometimes unexpectedly missing

15.5.0 - 2024-09-12

Added

  • Adds a gitlens.views.showCurrentBranchOnTop setting to specify whether the current branch is shown at the top of the views — closes #3520
  • Adds a sidebar to the Commit Graph
    • Shows counts of branches, remotes, stashes, tags, and worktrees
    • Clicking an item reveals its corresponding view
    • Try out this new feature by setting gitlens.graph.sidebar.enabled to true

Changed

  • Preview access of Launchpad is ending on September 27th
  • Simplifies the Create Worktree command flow by prompting to create a new branch only when necessary — closes #3542
  • Removes the use of VS Code Authentication API for GitKraken accounts

Fixed

  • Fixes #3514 - Attempting to delete the main worktree's branch causes a invalid prompt to delete the main worktree
  • Fixes #3518 - Branches in worktrees are no longer collapsed into folder groupings

Removed

  • Removes (disables) legacy "focus" editor

15.4.0 - 2024-09-04

Added

  • Adds better support for branches in worktrees
    • Changes the branch icon to a "repo" icon when the branch is in a worktree in views, quick pick menus, and the Commit Graph
    • Adds an Open in Worktree inline and context menu command and an Open in Worktree in New Window context menu command to branches and pull requests in views and on the Commit Graph
    • Removes the Switch to Branch... inline and context menu command from branches in views and on the Commit Graph when the branch is in a worktree
  • Adds ability to only search stashes when using type:stash (or is:stash) in commit search via the Commit Graph, Search & Compare view, or the Search Commits command
  • Adds ... inline command for stashes on the GitLens Inspect view
  • Adds an "up-to-date" indicator dot to the branch icon of branches in views
  • Adds an "alt" Pull command for the inline Fetch command on branches in views
  • Adds an "alt" Fetch command for the inline Pull command on branches in views
  • Adds Open Comparison on Remote command to branch comparisons in views
  • Adds new options to the Git Delete Worktree command to also delete the associated branch along with the worktree

Changed

  • Improves the branch comparisons in views to automatically select the base or target branch
  • Improves tooltips on branches, remotes, and worktrees in views
  • Upgrade to Pro flows now support redirects back to GitLens

Fixed

  • Fixes #3479 - Tooltip flickering
  • Fixes #3472 - "Compare working tree with.." often flashes open then closes the menu
  • Fixes #3448 - "Select for Compare" on a Commit/Stash/etc causes the Search and Compare view to be forcibly shown
  • Fixes the Git Delete Branch command when deleting a branch that is open on a worktree by adding a step to delete the branch's worktree first
  • Fixes an issue where pull requests in views could show the wrong comparison with the working tree when using worktrees
  • Fixes Copy Remote Comparison URL command to not open the URL, just copy it
  • Fixes cloud integrations remaining disconnected after disconnecting and reconnecting to a GitKraken account
  • Fixes "switch" deep links sometimes failing to complete in cases where the switch occurs in the current window

Removed

  • Removes status (ahead, behind, etc) decoration icons from branches in views

15.3.1 - 2024-08-21

Added

  • Adds DevEx Days promotion

Changed

  • Improves upgrade/purchase flow

15.3.0 - 2024-08-15

Added

  • Adds improvements and enhancements to Launchpad to make it easier to manage and review pull requests
    • Adds GitLab (cloud-only for now) support to show and manage merge requests in Launchpad
    • Adds a new Connect Additional Integrations button to the Launchpad titlebar to allow connecting additional integrations (GitHub and GitLab currently)
    • Adds an new experimental Launchpad view to provide a persistent view of the Launchpad in the sidebar
      • To try it out, run the Show Launchpad View command or set the gitlens.views.launchpad.enabled setting to true — let us know what you think!
      • While its functionality is currently limited, pull requests can be expanded to show changes, commits, and code suggestions, as well as actions to open changes in the multi-diff editor, open a comparision, and more
  • Adds new features and improvements to the Commit Graph
    • Branch visibility options, formerly in the Graph Filtering dropdown, are now moved to the new Branches Visibility dropdown in the Commit Graph header bar
    • Adds a new Smart Branches visibility option to shows only relevant branches — the current branch, its upstream, and its base or target branch, to help you better focus
    • Improves interactions with hovers on rows — they should do a better job of staying out of your way
    • Adds pull request information to branches with missing upstreams
  • Adds support for GitHub and GitLab cloud integrations — automatically synced with your GitKraken account
    • Adds an improved, streamlined experience for connecting cloud integrations to GitLens
    • Manage your connected integration via the the Manage Integrations command or the Integrations button on the GitKraken Account view
  • Adds comparison support to virtual (GitHub) repositories

Changed

  • Improves the Compare to/from HEAD command (previously Compare with HEAD) to compare commits, stashes, and tags with the HEAD commit where directionality is determined by topology and time
  • Improves the messaging of the merge and rebase commands
  • Renames Compare with Working Tree command to Compare Working Tree to Here
  • Renames Compare Common Base with Working Tree command to Compare Working Tree to Common Base
  • Renames Open Worktree in New Window Launchpad command to Open in Worktree
  • Renames Open Directory Compare command to Open Directory Comparison
  • Renames Open Directory Compare with Working Tree command to Directory Compare Working Tree to Here
  • Improves some messaging on Switch and Checkout commands

Fixed

  • Fixes #3445 - Cannot merge branch into detached HEAD
  • Fixes #3443 - Don't show gitlens context menu items in Copilot Chat codeblock editors
  • Fixes #3457 - Enriched autolink duplication in graph hover (and possibly other places)
  • Fixes #3473 - Plus features can't be restored after they are hidden
  • Fixes column resizing being stuck when the mouse leaves the Commit Graph
  • Fixes issues with incorrect commit count when using the merge and rebase commands
  • Fixes issues where a merge or rebase operation says there or no changes when there are changes
  • Fixes an error with queries that can cause Jira Cloud and other cloud integrations to stop working
  • Fixes issues with some directory comparison commands

15.2.3 - 2024-07-26

Fixed

  • Fixes (for real) #3423 - Blame annotations & revision navigation are missing in 15.2.1 when using remote (WSL, SSH, etc) repositories

15.2.2 - 2024-07-26

Fixed

  • Fixes #3423 - Blame annotations & revision navigation are missing in 15.2.1 when using remote (WSL, SSH, etc) repositories
  • Fixes #3422 - Extra logging
  • Fixes #3406 - Worktrees typo in package.json — thanks to PR #3407 by Matthew Yu (@matthewyu01)
  • Fixes cloud patch creation error on azure repos
  • Fixes #3385 - Provides commit from stash on create patch from stash action
  • Fixes #3414 - Patch creation may be done multiple times

15.2.1 - 2024-07-24

Added

  • Adds support for OpenAI's GPT-4o Mini model for GitLens' experimental AI features
  • Adds a Jump to HEAD button on the Commit Graph header bar (next to the current branch) to quickly jump to the HEAD commit
    • Adds a Jump to Reference as an alt modifier to the Jump to HEAD button to jump to the selected branch or tag
  • Adds support deep link documentation — closes #3399
  • Adds a pin status icon to Launchpad items when pinned

Changed

  • Changes the "What's new" icon on Home to not conflict with Launchpad
  • Improves working with worktrees by avoiding showing the root repo in worktrees during certain operations (e.g. rebase) and vice-versa
  • Changes how we track open documents to improve performance, reduce UI jumping, and support VS Code's new ability to show editor commands for all visible editors — closes#3284
  • Changes GitLab & GitLab self-managed access tokens to now require api scope instead of read_api to be able to merge Pull Requests
  • Renames Open Worktree in New Window option to Open in Worktree in Launchpad

Fixed

  • Fixes #3386 - Clicking anywhere on "Get started" should expand the section — thanks to PR #3402 by Nikolay (@nzaytsev)
  • Fixes #3410 - Adds stash commit message to commit graph row
  • Fixes #3397 - Suppress auth error notifications for github triggered by Launchpad
  • Fixes #3367 - Continually asked to reauthenticate
  • Fixes #3389 - Unable to pull branch 'xxx' from origin
  • Fixes #3394 - Pull request markers, when set in commit graph minimap or scroll, show as unsupported in settings JSON

15.2.0 - 2024-07-10

Added

  • Adds a Generate Title & Description button to the title input in Create Cloud Patch and in Changes to Suggest of the Inspect Overview tab
  • Adds support for Anthropic's Claude 3.5 Sonnet model for GitLens' experimental AI features
  • Adds a new counts option to the gitlens.launchpad.indicator.label setting to show the status counts of items which need your attention in the Launchpad status bar indicator
  • Adds Search for Commits within Selection command to the editor context menu when there is a selection
  • Adds a gitlens.launchpad.ignoredOrganizations setting to specify an array of organizations (or users) to ignore in the Launchpad
  • Improves the tooltips of stashes in GitLens views
    • Adds a gitlens.views.formats.stashes.tooltip setting to specify the tooltip format of the stashes in GitLens views
  • Improves the display of branch and tag tips in the File History and Line History and in commit tooltips in GitLens views
    • Adds provider-specific icons to tips of remote branches
  • Adds Commit Graph improvements:
    • Adds pull request markers to the graph scroll and minimap
    • Adds rich hovers on commit rows which include detailed commit information and links to pull requests, issues, and inspect
  • Adds Launchpad improvements:
    • Truncates long titles for Pull Requests so that the repository label is always visible
    • Adds Open on GitHub button to other relevant rows in the action step
    • Adds a new Open Worktree in New Window action and button to Launchpad items to more easily view the item in a worktree

Changed

  • Renames Reset Stored AI Key command to Reset Stored AI Keys... and adds confirmation prompt with options to reset only the current or all AI keys
  • Renames Open Inspect to Inspect Commit Details
  • Renames Open Line Inspect to Inspect Line Commit Details
  • Renames Open Details to Inspect Commit Details
  • Replaces Open in Editor link in the Launchpad with a link to gitkraken.dev
  • The Manage Account button in the GitKraken Account view and the GitLens: Manage Your Account command now use the account management page at gitkraken.dev
  • Fixes some cases where worktree state can be out-of-date after creation/deletion of a worktree

Fixed

  • Fixes #3344 - Make changing the AI key easier
  • Fixes #3377 - Cannot read properties of undefined (reading 'start')
  • Fixes #3377 - Deleting a worktree (without force) with working changes causes double prompts
  • Fixes Open SCM command for the Commmit Graph showing in the command palette - Thanks to PR #3376 by Nikolay (@nzaytsev)
  • Fixes fixes issue with Jira integration not refreshing
  • Fixes the Learn More link not working in the account verification dialog
  • Upgrading to Pro, managing a GitKraken account, and managing or connecting cloud integrations now no longer require the user to log in again in their respective pages on gitkraken.dev
  • Fixes deep links failing to cancel in the remote add stage

15.1.0 - 2024-06-05

Added

  • Adds support for GitHub Copilot and other VS Code extension-provided AI models for GitLens' experimental AI features
    • Adds a gitlens.ai.experimental.model setting to specify the AI model to use
    • Adds a gitlens.ai.experimental.vscode.model setting to specify the VS Code extension-provided AI model to use when gitlens.ai.experimental.model is set to vscode
  • Adds new Launchpad improvements:
    • Collapsed state of Launchpad groups are now saved between uses
    • The Draft and Pinned categories in the Launchpad now always sort their items by date
    • The Launchpad and Launchpad status bar indicator now indicate when there is an error loading data
    • The Launchpad indicator now shows the Launchpad icon next to the loading spinner when the Launchpad is loading

Changed

  • Changes the settings used to configure the AI models for GitLens' experimental AI features
    • Adds a gitlens.ai.experimental.model setting to specify the AI model to use
    • Removes the gitlens.ai.experimental.provider, gitlens.ai.experimental.openai.model, gitlens.ai.experimental.anthropic.model, and gitlens.ai.experimental.gemini.model settings in favor of the above

Fixed

  • Fixes #3295 - Incorrect pluralization in Authors lens — thanks to PR #3296 by bm-w (@bm-w)
  • Fixes #3277 - Unable to pull branch when the local branch whose name differs from its tracking branch

15.0.4 - 2024-05-20

Added

  • Adds a Copy as Markdown context menu command to autolinks in the Autolinked Issues and Pull Requests section in the Search & Compare view
  • Adds a Connect Remote Integration command to the Autolinked Issues and Pull Requests section in the Search & Compare view
  • Adds gitlens.currentLine.fontFamily, gitlens.currentLine.fontSize, gitlens.currentLine.fontStyle, gitlens.currentLine.fontWeight settings to specify the font (family, size, style, and weight respectively) of the Inline Blame annotation — closes #3306
  • Adds gitlens.blame.fontStyle settings to specify the font style of the File Blame annotations

Changed

  • Improves the Copy context menu command on autolinks in the Autolinked Issues and Pull Requests section in the Search & Compare view
  • Changes the Open Issue on Remote context menu command on autolinks to Open URL in the Autolinked Issues and Pull Requests section in the Search & Compare view
  • Changes the Copy Issue URL context menu command on autolinks to Copy URL in the Autolinked Issues and Pull Requests section in the Search & Compare view
  • Renames the Connect to Remote command to Connect Remote Integration
  • Renames the Disconnect from Remote command to Disconnect Remote Integration

Fixed

  • Fixes #3299 - Branches view no longer displays text colors for branch status after updating to v15.0.0 or above
  • Fixes #3277 (in pre-release only) - Unable to pull branch when the local branch whose name differs from its tracking branch
  • Fixes "hang" in Worktrees view when a worktree is missing
  • Fixes an issue where the Commit Graph header bar sometimes pushes "Fetch" to the right
  • Fixes an issue where the autolink type (issue vs pull request) was not shown properly in the Autolinked Issues and Pull Requests section in the Search & Compare view

15.0.3 - 2024-05-14

Fixed

  • Fixes #3288 - Branch, Tags, Stashes, Local Branch, and Remote Branch "Markers" Are Missing/Removed From Minimap

15.0.2 - 2024-05-14

Fixed

  • Fixes #3270 - GitLens erroneously thinks certain branches are worktrees under some conditions

15.0.1 - 2024-05-14

15.0.0 - 2024-05-14

Added

  • Adds Launchpad preview, a new Pro feature bringing your GitHub pull requests into a unified, categorized list to keep you focused and your team unblocked
    • Open using the new GitLens: Open Launchpad command
    • Categorizes pull requests by status
      • Current Branch: Pull requests associated with your current branch
      • Ready to Merge: Pull requests without conflicts, ci failures, change suggestions or other issues preventing merge
      • Blocked: Pull requests with conflicts, CI failures, or that have no reviewers assigned
      • Needs Your Review: Pull requests waiting for your review
      • Requires Follow-Up: Pull requests that have been reviewed and need follow-up
      • Draft: Draft pull requests
      • Pinned: Pull requests you have pinned
      • Snoozed: Pull requests you have snoozed
      • Other: Other pull requests
    • Action on a pull request directly from the Launchpad:
      • Merge a pull request
      • Open a pull request on GitHub
      • Switch to or create a branch or worktree for a pull request to review changes
      • Display a pull request's details in the Overview
      • Open a pull request's changes in the multi-diff editor
      • View a pull request's branch in the Commit Graph
      • View or create code suggestions for a pull request
      • Pin or snooze a pull request in the Launchpad
    • Adds a status bar indicator of the Launchpad
      • Opens the Launchpad when clicked
      • Shows the top pull request and its status in the status bar
        • Also highlights your top pull request in the launchpad when opened from the indicator
      • Provides a summary of your most critical pull requests on hover
        • Each summary line includes a link to open the Launchpad to that category
    • Adds new settings for the Launchpad and indicator
      • gitlens.launchpad.ignoredRepositories: Array of repositories with owner/name format to ignore in the Launchpad
      • gitlens.launchpad.staleThreshold: Value in days after which a pull request is considered stale and moved to the Other category
      • gitlens.launchpad.indicator.enabled: Specifies whether to show the Launchpad indicator in the status bar
      • gitlens.launchpad.indicator.icon: Specifies the style of the Launchpad indicator icon
      • gitlens.launchpad.indicator.label: Specifies the style of the Launchpad indicator label
      • gitlens.launchpad.indicator.groups: Specifies which critical categories of pull requests to summarize in the indicator tooltip
      • gitlens.launchpad.indicator.useColors: Specifies whether to use colors in the indicator
      • gitlens.launchpad.indicator.openInEditor: Specifies whether to open the Launchpad in the editor when clicked
      • gitlens.launchpad.indicator.polling.enabled: Specifies whether to regularly check for changes to pull requests
      • gitlens.launchpad.indicator.polling.interval: Specifies the interval in minutes to check for changes to pull requests
  • Adds new features that make code reviews easier
    • Adds Code Suggest preview, a cloud feature, that frees your code reviews from unnecessary restrictions
      • Create a Code Suggestion from the Inspect: Overview tab when on a PR's branch
      • Upon creation of a Code Suggestion, a comment will appear on the pull request
        • Code Suggestions can be viewed and apply directly from gitkraken.dev, or open in GitKraken Desktop or GitLens.
      • See a PR's Code Suggestions from anywhere we currently display PR information in our views (Commits, Branches, Remotes)
      • You can additionally start Code Suggestions from the Launchpad
    • Adds a Pull Request view to view PR commits and review file changes
    • Adds a Pull Request badge to the Graph and the Inspect Overview
  • Adds rich Jira Cloud integration
    • Enables rich automatic Jira autolinks in commit messages everywhere autolinks are supported in GitLens
    • Adds a Cloud Integrations button to the GitKraken Account view and a new GitLens: Manage Cloud Integrations command to manage connected cloud integrations
    • Adds a Manage Jira button to Inspect and a link in Autolink settings to connect to Jira
  • Adds support for Google Gemini for GitLens' experimental AI features
    • Adds a gitlens.ai.experimental.gemini.model setting to specify the Gemini model
  • Adds support for the latest OpenAI and Anthropic models for GitLens' experimental AI features
  • Adds a new gitlens.views.collapseWorktreesWhenPossible setting to specify whether to try to collapse the opened worktrees into a single (common) repository in the views when possible

Changed

  • Reworks Commit Details, now called the Inspect view
    • Revamps the Working Changes tab into the Overview tab
    • Provides richer branch status information and branch switching
    • Adds Push, Pull, and Fetch actions
    • Richer Pull Request Information
      • Open details in the Pull Request view
      • Links to open and compare changes
      • List of the PR's Code Suggestions
    • Create a Code Suggestion by clicking the Suggest Changes for PR button
  • Improves contributor and team member picking for the adding co-authors, Code Suggest, and Cloud Patches
  • Improves performance when creating colors derived from the VS Code theme
  • Changes the command to open the Launchpad in the editor (formerly Focus View) from GitLens: Show Focus to GitLens: Open Launchpad in Editor
  • Renames the setting gitlens.focus.allowMultiple to gitlens.launchpad.allowMultiple
  • Updates most deep link prompts to quick picks or quick inputs, moves most prompts to before a repository is opened.
  • Updates Pro upgrade links to use the newer gitkraken.dev site

Fixed

  • Fixes #3221 - Cannot use word "detached" in branch names
  • Fixes #3197 - Only emojify standalone emojis — thanks to PR #3208 by may (@m4rch3n1ng)
  • Fixes #3180 - Focus View feedback button is not working
  • Fixes #3179 - The checkmarks in cherry pick are not displayed
  • Fixes #3249 - Error "Cannot read properties of null (reading 'map')
  • Fixes #3198 - Repository location in cloud workspace doesn't work when the repo descriptor does not contain a url
  • Fixes #3143 - File Annotation icon isn't themed according to the icons...

14.9.0 - 2024-03-06

Added

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

Changed

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

Fixed

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

14.8.2 - 2024-02-16

Fixed

  • Fixes incorrect organization self-hosting message when creating a Cloud Patch

14.8.1 - 2024-02-15

Added

  • Adds a Create New Branch... option to the Git Switch to... command to easily create a new branch to switch to — closes #3138
  • Adds the ability to start a new trial from the Account View and feature gates for users without a Pro account whose Pro trial has been expired for over 90 days.

Fixed

  • Fixes AI features not being displayed when signed-out of an account

14.8.0 - 2024-02-08

Added

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

Changed

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

Fixed

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

14.7.0 - 2024-01-17

Added

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

Changed

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

Fixed

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

Removed

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

14.6.1 - 2023-12-14

Fixed

  • Fixes #3057 - Uncommitted changes cause an error when gitlens.defaultDateSource is "committed"

14.6.0 - 2023-12-13

Added

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

Changed

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

Fixed

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

[14.5.2] - 2023-11-30

Added

  • Adds cyber week promotion

14.5.1 - 2023-11-21

Added

  • Adds support for OpenAI's GPT-4 Turbo and latest Anthropic models for GitLens' experimental AI features — closes #3005

Changed

  • Improves the performance of the Commit Graph when loading a large number of commits
  • Refines AI prompts to provide better commit message generation and explanation results
  • Updates Files Changed panel of Commit Details, which now supports indent settings and adds better accessibility

Fixed

  • Fixes #3023 - "Unable to show blame. Invalid or missing blame.ignoreRevsFile" with valid ignore revs file
  • Fixes #3018 - Line blame overlay is broken when commit message contains a )
  • Fixes #2625 - full issue ref has escape characters that break hover links
  • Fixes stuck busy state of the Commit Details Explain AI panel after canceling a request
  • Fixes cloud patch deep links requiring a paid plan (while in preview)

14.5.0 - 2023-11-13

Added

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

Changed

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

Fixed

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

14.4.0 - 2023-10-13

Added

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

Changed

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

Fixed

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

14.3.0 - 2023-09-07

Added

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

Changed

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

Fixed

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

14.2.1 - 2023-08-10

Added

  • Adds a Refresh action to the Commit Details view

Fixed

  • Fixes #2850 - For custom remotes, the URL resulting from the branches is truncated
  • Fixes #2841 - Error when trying to browse commits
  • Fixes #2847 - 14.2.0 Breaks "pull" action works fine in 14.1.1

14.2.0 - 2023-08-04

Added

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

Changed

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

Fixed

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

14.1.1 - 2023-07-18

Added

  • Adds the ability to provide a custom url to support Azure-hosted Open AI models — refs #2743

Changed

  • Improves autolink URL generation by improving the "best" remote detection — refs #2425
  • Improves preserving the ref names in deeplinks to comparisons

Fixed

  • Fixes #2744 - GH enterprise access with Focus
  • Fixes deeplink comparison ordering for a better experience
  • Fixes deeplinks to comparisons with working tree not resolving

14.1.0 - 2023-07-13

Added

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

Changed

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

Fixed

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

14.0.1 - 2023-06-19

Changed

  • Changes view's contextual title to "GL" to appear more compact when rearranging views

Fixed

  • Fixes #2731 - Bug on Focus View Help Popup z-order
  • Fixes #2742 - Search & Compare: Element with id ... is already registered
  • Fixes an issue where the links in the Search & Compare view failed to open the specific search type
  • Fixes an issue when searching for commits and the results contain stashes

14.0.0 - 2023-06-14

Added

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

Changed

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

Fixed

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

13.6.0 - 2023-05-11

Added

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

Changed

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

Fixed

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

Removed

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

13.5.0 - 2023-04-07

Added

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

Changed

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

Fixed

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

13.4.0 - 2023-03-16

Added

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

Changed

  • Improves the display of items in the Commit Graph
    • When showing local branches, we now always display the upstream branches in the minimap, scrollbar markers, and graph rows
    • When laying out lanes in the Graph column, we now bias to be left aligned when possible for an easier to read and compact graph visualization
  • Improves Open Worktree for Pull Request via GitLens... command to use the qualified remote branch name, e.g. owner/branch, when creating the worktree
  • Removes Insiders edition in favor of the pre-release edition

Fixed

  • Fixes #2550 - Related pull request disappears after refresh
  • Fixes #2549 - toggle code lens does not work with gitlens.codeLens.enabled == false
  • Fixes #2553 - Can't add remote url with git@ format
  • Fixes #2083, #2539 - Fix stashing staged changes — thanks to PR #2540 by Nafiur Rahman Khadem (@ShafinKhadem)
  • Fixes #1968 & #1027 - Fetch-> fatal: could not read Username — thanks to PR #2481 by Skyler Dawson (@foxwoods369)
  • Fixes #2495 - Cannot use gitlens+ feature on public repo in some folders
  • Fixes #2530 - Error when creating worktrees in certain conditions
  • Fixed #2566 - hide context menu in output panel — thanks to PR #2568 by hahaaha (@hahaaha)

13.3.2 - 2023-03-06

Changed

  • Reduces the size of the GitLens bundle which improves startup time
    • GitLens' extension bundle for desktop (node) is now ~24% smaller (1.58MB -> 1.21MB)
    • GitLens' extension bundle for web (vscode.dev/github.dev) is now ~6% smaller (1.32MB -> 1.24MB)

Fixed

  • Fixes #2533 - Current Branch Only graph filter sometimes fails
  • Fixes #2504 - Graph header theme colors were referencing the titlebar color properties
  • Fixes #2527 - shows added files for Open All Changes
  • Fixes #2530 (potentially) - Error when creating worktrees in certain conditions
  • Fixes an issue where trial status can be shown rather than a purchased license

13.3.1 - 2023-02-24

Fixed

  • Fixes graph issue where scroll markers do not update until mouseover when changing the gitlens.graph.scrollMarkers.additionalTypes setting.

13.3.0 - 2023-02-23

Added

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

Changed

  • Greatly reduces the size of many of GitLens' bundles which improves startup time
    • GitLens' extension bundle for desktop (node) is now ~18% smaller (1.91MB -> 1.57MB)
    • GitLens' extension bundle for web (vscode.dev/github.dev) is now ~37% smaller (2.05MB -> (1.30MB)
    • GitLens' Commit Graph webview bundle is now ~31% smaller (1.03MB -> 734KB)
  • Changes the Contributors view to be shown by default on the GitLens sidebar

Removed

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

Fixed

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

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 in the gitlens.views.commitFormat setting) — closes #493
  • Adds the Show Commit in View command to commits in GitLens views to quickly open the commit in the Search Commits view — closes #502
  • Adds the Open Changes (with difftool) command to files in GitLens views — closes #389
  • Adds an Expand command to some GitLens view nodes to expand them — closes #275
  • Adds a Fetch Repositories (gitlens.fetchRepositories) command to fetch all of the open repositories
  • Adds a Pull Repositories (gitlens.pullRepositories) command to pull all of the open repositories
  • Adds a Push Repositories (gitlens.pushRepositories) command to push all of the open repositories (be careful with this one)
  • Adds a Show Line History View (gitlens.showLineHistoryView) command to open the Line History view
  • Adds a Show Commit in View (gitlens.showCommitInView) command to open a commit in the Search Commits view
  • Adds a Show File History in View (gitlens.showFileHistoryInView) command to open a file's revision (commit) history in the File History view
  • Adds a Show Commit in View (gitlens.showCommitInView) command to quickly open the current line's commit in the Search Commits view
  • Adds a Show Revision Details (gitlens.showQuickRevisionDetails) command to quickly show the revision (commit) details of the current file revision
  • Adds the Open Changes with Working File (gitlens.diffWithWorking) command to the editor toolbar when comparing revisions
  • Adds comparisons to commit ids, by prefixing with a #, in addition to branches and tags — closes #535
  • Adds support for git mailmap — closes #388
  • Adds support for Azure DevOps (formerly VSTS) remotes — closes #501
  • Adds better detection of on-prem BitBucket and GitLab remotes — closes #214
  • Adds some missing gitmojis — thanks to PR #510 by Loris Bettazza (@Pustur)
  • Adds a gitlens.codeLens.includeSingleLineSymbols setting to specify whether to provide any Git CodeLens on symbols that span only a single line
  • Adds smooth scrolling to the interactive settings editor when using the Jump To links

Changed

  • Changes the sorting of branch, tags, and files in GitLens views to be a natural sort — closes #547
  • Changes the Apply Changes command to truly apply only the patch of the specified change — closes #539
  • Changes Azure Pipelines documents to use document scope only by default — thanks to PR #548 by Matt Cooper (@vtbassmatt)
  • Renames Compare File with Branch or Tag... (gitlens.diffWithBranch) command to Open Changes with Branch or Tag...
  • Renames Compare File with Next Revision (gitlens.diffWithNext) command to Open Changes with Next Revision
  • Renames Compare File with Previous Revision (gitlens.diffWithPrevious) command to Open Changes with Previous Revision
  • Renames Compare Commit with Previous (gitlens.diffLineWithPrevious) command to Open Line Changes with Previous Revision
  • Renames Compare File with Revision... (gitlens.diffWithRevision) command to Open Changes with Revision...
  • Renames Compare File with Working Revision (gitlens.diffWithWorking) command to Open Changes with Working File
  • Renames Compare Commit with Working File (gitlens.diffLineWithWorking) command to Open Line Changes with Working File
  • Renames * in Remote commands to * on Remote
  • Renames and migrates gitlens.explorers.* settings to gitlens.views.*
  • Renames and migrates gitlens.gitExplorer.* settings to gitlens.views.repositories.*
  • Renames and migrates gitlens.historyExplorer.* settings to gitlens.views.fileHistory.* and gitlens.views.lineHistory.*
  • Renames and migrates gitlens.resultsExplorer.* settings to gitlens.views.search.* and gitlens.views.compare.*
  • Replaces Show GitLens Explorer (gitlens.showGitExplorer) command with Show Repositories View (gitlens.showRepositoriesView)
  • Replaces Show File History Explorer (gitlens.showHistoryExplorer) command with Show File History View (gitlens.showFileHistoryView)
  • Replaces Show Results Explorer (gitlens.showResultsExplorer) command with Show Search Commits View (gitlens.showSearchView) and Show Compare View (gitlens.showCompareView)
  • Switches to use the new git extension's api to get the git path

Fixed

  • Fixes #405 - Secondary, blank repository appears repeatedly in Repositories view
  • Fixes #430 - File revisions can end up being parsed by language servers (causing errors and warnings, etc)
  • Fixes #496 - Short hash length doesn't match git's default length
  • Fixes #503 - Open Changes (with difftool) opens one difftool window per changed file
  • Fixes #507 - Restrict commit message size
  • Fixes #527 - GitLens icon flashes on startup
  • Fixes #533 - Some descriptions not using markdown properly in Settings GUI
  • Fixes #544 - Some commit messages have one letter missing
  • Fixes CHANGELOG issue — thanks to PR #558 by Ash Clarke (@ashclarke)

Removed

  • Removes gitlens.advanced.git setting as it is no longer needed

8.5.6 - 2018-08-21

Fixed

  • Fixes #477 - Can't load any GitLens features or UI
  • Fixes #482 - UI displays "undefined" in results panel when comparing

8.5.5 - 2018-08-18

Added

  • Adds Copy Remote File URL to Clipboard (gitlens.copyRemoteFileUrlToClipboard) command — copies the remote url of the current file and line to the clipboard — closes #467

Fixed

  • Fixes #471 - Don't use Ctrl+Alt+[character] as a shortcut
  • Fixes #478 - suppressShowKeyBindingsNotice gets saved even when it is not required
  • Fixes #468 - Commit history for detached HEAD doesn't work properly

8.5.4 - 2018-07-31

Added

  • Adds Checkout Commit (via Terminal) command (gitlens.terminalCheckoutCommit) to commit node(s) of the GitLens explorer — closes #463

Changed

  • Improves performance of providing blame annotations, especially for large files (a ~33% improvement on some files)
  • Changes commit search by sha to jump directly to the commit (if one is found), rather than having to click through to the commit
  • Updates settings descriptions to better support the new settings editor in vscode
  • Changes Rebase to Commit (via Terminal) command (gitlens.terminalRebaseCommit) to apply to all commit node(s) of the GitLens explorer
  • Changes Reset to Commit (via Terminal) command (gitlens.terminalResetCommit) to apply to all commit node(s) of the GitLens explorer

Fixed

  • Fixes #462 - Source Control shortcut on macOS (⌃⇧G) shouldn't be overridden
  • Fixes #457 - Displays the wrong username (You) — thanks to PR #460 by Zyck (@qzyse2017)
  • Fixes #459 - File blame annotation text overflow with letter spacing setting
  • Fixes issues with GitLens Welcome and the interactive settings editor with light themes

8.5.3 - 2018-07-25

Fixed

  • Fixes #454 - Search for string returns merge commits (unlike raw git log -S)
  • Fixes issue showing changes with untracked stashed files
  • Fixes issue showing changes with working file when the file has been renamed

8.5.2 - 2018-07-20

Fixed

  • Fixes #451 - "apply Changes" has discarded all my changes
  • Fixes #449 - Stop hiding explorers by default when in Zen mode

8.5.1 - 2018-07-18

Added

  • Adds emoji support, e.g. :smile: in commit messages will now be 😃 — closes #429
  • Adds Compare with Selected and Select for Compare commands to file nodes in the GitLens, GitLens File History, and GitLens Results explorers — closes #446
  • Adds gitlens.historyExplorer.avatars setting to specify whether to show avatar images instead of status icons in the GitLens File History explorer — allows for an independent value from the other explorers

Fixed

  • Fixes #444 - GitLens custom viewlet icon slightly larger than standard
  • Fixes #437 - Remove --first-parent from git commands to show file history from merged in repositories
  • Fixes #252 - Cannot read property 'push' of undefined
  • Fixes issue where GitLens saves a couple settings with default values into user settings (rather than just removing the setting)

8.5.0 - 2018-07-16

Added

  • Adds an all-new GitLens sidebar view to contain the GitLens, GitLens File History, and GitLens Results explorers
  • The new view is enabled by default, but can easily be configured back to the existing locations via the GitLens interactive settings editor
  • Adds tag annotations to the tag tooltips in the GitLens explorer — closes #431
  • Adds a gitlens.hovers.avatars setting to specify whether to show avatar images in hovers — closes #432 thanks to PR #441 by Segev Finer (@segevfiner)
  • Adds the gitlens.hovers.avatars setting to the GitLens interactive settings editor to specify whether to show avatar images in hovers
  • Adds Choose from Branch or Tag History... command to the quick pick menu shown by the Show File History... command (gitlens.showQuickFileHistory) — closes #316
  • Adds the Compare File with Revision... command (gitlens.diffWithRevision) as an alternate (alt+click) for the Compare File with Previous Revision command in the editor toolbar

Changed

  • Renames the GitLens History explorer to GitLens File History explorer for better clarity
  • Changes the GitLens File History explorer to always show the full file history even when reviewing revisions
  • Changes the behavior of and renames the Show Branches and Tags command and on the quick pick menu shown by the Compare File with Revision... command (gitlens.diffWithRevision) to Choose from Branch or Tag History...
  • Changes the behavior of and renames the Show Branches and Tags command on the quick pick menu shown by the Open Revision... command (gitlens.openFileRevision) to Choose from Branch or Tag History...

Removed

  • Removes gitlens:activeIsTracked, gitlens:activeIsBlameable, gitlens:activeIsRevision, and gitlens:activeHasRemotes contexts and consolidates them into gitlens:activeFileStatus for better performance and UX

Fixed

  • Fixes #436 - Copy to clipboard not working
  • Fixes #442 - GitLens File History fails if name (or path) starts with -
  • Fixes #440 - Searching for commits with an empty query yields to no results anymore
  • Fixes issue where commands in the editor toolbar would flash unnecessarily when navigating history or switching tabs
  • Fixes issue where the Compare File with Previous Revision command wouldn't work properly when the file had been renamed in some cases
  • Fixes issue where the Compare File with Next Revision command wouldn't work properly when the file had been renamed in some cases
  • Fixes issue where changed files count was wrong when the branch was behind the upstream
  • Fixes issue where the GitLens File History explorer wasn't being updated automatically for working changes
  • Fixes issue where the Compare File with * Revision commands in the editor toolbar would show and hide too often because of insignificant focus changes
  • Fixes issue where the scope box would be empty when there was no workspace open in the interactive settings editor

8.4.1 - 2018-06-19

Fixed

  • Fixes issue with insiders builds because of the new SymbolInformation API changes (see Microsoft/vscode#34968)

8.4.0 - 2018-06-19

Added

  • Adds completely revamped heatmap annotations cold heatmap
    • The indicator's color, now customizable, will either be hot or cold based on the age of the most recent change (cold after 90 days by default) — closes #419
    • The indicator's brightness ranges from bright (newer) to dim (older) based on the relative age, which is calculated from the median age of all the changes in the file
    • Adds gitlens.heatmap.ageThreshold setting to specify the age of the most recent change (in days) after which the gutter heatmap annotations will be cold rather than hot (i.e. will use gitlens.heatmap.coldColor instead of gitlens.heatmap.hotColor)
    • Adds gitlens.heatmap.coldColor setting to specify the base color of the gutter heatmap annotations when the most recent change is older (cold) than the gitlens.heatmap.ageThreshold setting
    • Adds gitlens.heatmap.hotColor setting to specify the base color of the gutter heatmap annotations when the most recent change is newer (hot) than the gitlens.heatmap.ageThreshold setting
  • Adds new branch history node under the Repository Status node in the GitLens explorer
  • Adds GitLab and Visual Studio Team Services icons to the remote nodes in the GitLens explorer — thanks to PR #421 by Maxim Pekurin (@pmaxim25)

Fixed

  • Fixes #400 - GitLens logging to debug console when debugging different extension
  • Fixes #409 - Literal $(ellipsis) inserted into commit quick pick menu entry placeholder text
  • Fixes #415 - Branch names get mangled by color escapes — thanks to PR #416 by Roy Ivy III (@rivy)

8.3.5 - 2018-06-08

Fixed

  • Fixes more instances of #295and #318 - Any error encountered during the search for repositories could cause GitLens to die

8.3.4 - 2018-06-06

Added

  • Adds clipboard support for Linux without requiring any external dependencies — thanks to PR #394 by Cédric Malard (@cmalard)
  • Adds a select branch quick pick menu to the Open File in Remote command (gitlens.openFileInRemote) when the current branch has no upstream tracking branch — closes #209

Changed

  • Moves the Open Working File command (gitlens.openWorkingFile) to the right of the Compare File with * Revision commands in the editor toolbar

Fixed

  • Fixes #400 - Reset TO commit also resets chosen one
  • Fixes #399 - "Open x in Remote" commands aren't always available
  • Fixes #397 - Error while opening the gitlens view using Open View command
  • Fixes #391 - GitLens adds some settings in settings.json
  • Fixes another case of #343 - Can't show blame when VSCode starts on branch without upstream — thanks to PR #390 by ryenus (@ryenus)
  • Fixes #392 - unable to contribute if default script shell is sh — thanks to PR #393 by Cédric Malard (@cmalard)
  • Fixes issue with the chorded keyboard shortcut for the Compare File with Previous Revision command (gitlens.diffWithPreviousInDiff) — from #395
  • Fixes the Open Working File command (gitlens.openWorkingFile) not always showing in the editor toolbar when appropriate

8.3.3 - 2018-05-31

Added

  • Adds (re-adds) support for handling single files — closes #321
  • Adds Close Repository (gitlens.explorers.closeRepository) command to repository and repository status nodes in the GitLens explorer — closes (hides) the repository in the GitLens explorer

Fixed

  • Fixes #362 - Too many CodeLenses in postcss files
  • Fixes #381 - Can't stash single files with older versions of Git
  • Fixes #384 - Absolute dates not always honored in GitLens Results explorer
  • Fixes #385 - Wrong git command to delete remote branch

8.3.2 - 2018-05-21

Fixed

  • Fixes #366 - Running a GitLens command from a keybinding fails (more cases)
  • Fixes many issues where commands wouldn't work if the active file wasn't part of an open repository — now GitLens will try to find the best repository otherwise it will open a repository quick pick menu if there is more than one

8.3.1 - 2018-05-18

Added

  • Adds the ability to control where the GitLens, GitLens File History, and GitLens Results explorers are shown 🎉 — closes #213, #377
    • Adds gitlens.gitExplorer.location setting to the interactive settings editor to specify where the GitLens explorer is shown — either in the Explorer or Source Control view
    • Adds gitlens.historyExplorer.location setting to the interactive settings editor to specify where the GitLens File History explorer is shown — either in the Explorer or Source Control view
    • Adds gitlens.resultsView.location setting to the interactive settings editor to specify where the GitLens Results explorer is shown — either in the Explorer or Source Control view

Changed

  • Renames GitLens Results view to GitLens Results explorer for consistency

Fixed

  • Fixes #372 - Wrong URL to VSTS work item when using hash work item id in commit

8.3.0 - 2018-05-17

Added

  • Adds user-defined modes for quickly toggling between sets of settings

    mode switch

    • Adds Switch Mode command (gitlens.switchMode) to quickly switch the active GitLens mode

    • Adds a built-in Zen mode which for a zen-like experience, disables many visual features

      • Adds Toggle Zen Mode command (gitlens.toggleZenMode) to toggle Zen mode
    • Adds a built-in Review mode which for reviewing code, enables many visual features

      • Adds Toggle Review Mode command (gitlens.toggleReviewMode) to toggle Review mode
    • Adds the active mode to the status bar, optional (on by default)

      • Adds gitlens.mode.statusBar.enabled setting to specify whether to provide the active GitLens mode in the status bar
      • Adds gitlens.mode.statusBar.alignment setting to specify the active GitLens mode alignment in the status bar
    • Adds modes settings (gitlens.mode.*) to the interactive settings editor

      modes settings

    • Adds gitlens.mode.active setting to specify the active GitLens mode, if any

    • Adds gitlens.modes setting to specify the user-defined GitLens modes

  • Adds an icon for the Compare File with Previous Revision command (gitlens.diffWithPrevious) and moves it into the editor toolbar

  • Adds an icon for the Compare File with Next Revision command (gitlens.diffWithNext) and moves it into the editor toolbar

  • Adds menu settings (gitlens.menus.*) to the interactive settings editor

    menu settings

  • Adds a display mode dropdown at the top of the interactive settings editor to reduce complexity

    settings mode

    • Adds gitlens.settings.mode setting to specify the display mode of the interactive settings editor
  • Adds a tree layout option to tags in the GitLens explorer — closes #358

  • Adds Show GitLens Explorer (gitlens.showGitExplorer) command — shows/expands the GitLens explorer

  • Adds Show File History Explorer (gitlens.showHistoryExplorer) command — shows/expands the GitLens File History explorer

  • Adds Show Results Explorer (gitlens.showResultsView) command — shows/expands the GitLens Results explorer

Changed

  • Moves the GitLens, GitLens File History, and GitLens Results explorers under the Source Control activity (in the sidebar) 🎉 — closes #213
  • Showing results in the GitLens Results explorer now properly shows the explorer first
  • Renames Compare Line Revision with Previous command (gitlens.diffLineWithPrevious) to Compare Commit with Previous for consistency with other commands
  • Renames Compare Line Revision with Working File command (gitlens.diffLineWithWorking) to Compare Commit with Working File for consistency with other commands
  • Renames Show Commit File Details command (gitlens.showQuickCommitFileDetails) to Show Commit Details for consistency with other commands
  • Reworks GitLens menu contributions and configuration — see menu settings above
    • Renames the gitlens.advanced.menus setting to gitlens.menus
  • Uses the new Webview API for better interactions and behavior with the interactive settings editor and welcome page

Fixed

  • Fixes #366 - Running a GitLens command from a keybinding fails
  • Fixes #155 - Navigating file diffs with alt+, gets stuck
  • Fixes #359 - Show changes of an added file in the first commit
  • Fixes bronze typo thanks to PR #361 by Cory Forsyth (@bantic)
  • Fixes individually typo thanks to PR #364 by Brett Cannon (@brettcannon)
  • Fixes issue where comparing previous revision during a merge/rebase conflict failed to show the correct contents
  • Fixes issue with the current line blame toggle not working when current line blame starts disabled
  • Fixes various issues when not on a branch

8.2.4 - 2018-04-22

Added

  • Adds a visible error message for when Git is disabled ("git.enabled": false) — for #318

8.2.3 - 2018-04-21

Fixed

  • Fixes #313 - Unable to show branch history for branch that matches file or folder name
  • Fixes #348 - "Open in remote" commands disappeared from command palette
  • Fixes JSON schema of the gitlens.advanced.blame.customArguments setting

8.2.2 - 2018-04-19

Added

  • Adds an indicator to the GitLens explorer's branch history to mark the tips of all branches
  • Adds gitlens.advanced.blame.customArguments setting to specify additional arguments to pass to the git blame command — closes #337

Changed

  • Changes the author name to "You" when appropriate — closes #341

Fixed

  • Fixes #345 - Custom date formats don't work in the GitLens view
  • Fixes #336 - Default Settings Get Added Automatically
  • Fixes #342 - GitLens crashes while debugging with Chrome Debugger a larger project
  • Fixes #343 - Can't show blame when VSCode starts on branch without upstream
  • Fixes issue where username and/or password in a remote urls could be shown

8.2.1 - 2018-04-11

Added

  • Adds better logging for failed git commands

Changed

  • Marks temporary files (used when showing comparisons with previous revisions) as read-only to help avoid accidental edits/saving

Fixed

  • Fixes #320 - Stashes with a single untracked file created with "stash push" aren't shown in the GitLens explorer
  • Fixes #331 - CodeLens shows on every import in Python
  • Fixes issues where quick pick menu progress indicators will get stuck in some cases because of a vscode api change in Microsoft/vscode#46102

8.2.0 - 2018-03-31

Added

  • Adds new stand-alone GitLens File History explorer to visualize the history of the current file — undocked version of the GitLens explorer history view

    GitLens File History explorer

  • Adds richer tooltips to the GitLens and GitLens Results explorers, and richer working tree and upstream status to the GitLens explorer

    Rich tooltips

  • Adds an indicator to the GitLens explorer's branch history to mark the synchronization point between the local and remote branch (if available)

    Branch upstream indicator

  • Adds ability to easily switch between relative and absolute dates via the gitlens.defaultDateStyle settings — closes #312

    • Adds ${agoOrDate} and ${authorAgoOrDate} tokens to gitlens.blame.format, gitlens.currentLine.format, gitlens.explorers.commitFormat, gitlens.explorers.stashFormat, and gitlens.statusBar.format settings which will honor the gitlens.defaultDateStyle setting

    General settings

  • Adds annotation format settings (gitlens.*.format) to the interactive settings editor

    Annotation format settings

  • Adds new gitlens.currentLine.scrollable setting to specify whether the current line blame annotation can be scrolled into view when it is outside the viewport — closes #149, #290, #265

    Allow scrolling to annotation setting

  • Adds gitlens.statusBar.reduceFlicker setting to the interactive settings editor

    Reduce status bar flashing setting

  • Adds a one-time notification on startup if the alt-based keyboard shortcuts are in use, with options to easily switch to another set

  • Adds Copy Commit ID to Clipboard (gitlens.copyShaToClipboard) command to changed file nodes in the GitLens explorer and GitLens Results explorer

  • Adds Copy Commit Message to Clipboard (gitlens.copyMessageToClipboard) command to changed file nodes in the GitLens explorer and GitLens Results explorer

Changed

  • Moves Keyboard Settings to the General section of the interactive settings editor
  • Renames Compare with Index (HEAD) (gitlens.explorers.compareWithHead) command to Compare with HEAD — closes #309
  • Renames Compare Index (HEAD) with Branch or Tag... (gitlens.diffHeadWithBranch) command to Compare HEAD with Branch or Tag... — closes #309

Removed

  • Removes the unnecessary Show File Blame Annotations (gitlens.showFileBlame) command — Toggle File Blame Annotations (gitlens.toggleFileBlame) provides similar functionality
  • Removes the unnecessary Show Line Blame Annotations (gitlens.showLineBlame) command — Toggle Line Blame Annotations (gitlens.toggleLineBlame) provides similar functionality
  • Removes Open Working File (gitlens.openWorkingFile) command from the editor toolbar when the built-in Open File command is visible
  • Removes Compare with HEAD (gitlens.explorers.compareWithHead), Compare with Working Tree (gitlens.explorers.compareWithWorking), and Compare Compare Ancestry with Working Tree (gitlens.explorers.compareAncestryWithWorking) commands from the current branch since comparing a branch with itself doesn't make sense — closes #309

Fixed

  • Fixes #314 - Toggle line annotation doesn't work properly
  • Fixes #310 - "via Terminal" commands need quoting around work directory
  • Fixes issues with the active repository in the GitLens explorer failed to update properly
  • Fixes issues with Open File, Open Revision, and Show File History commands and images and other binary files
  • Fixes issues preventing nodes in the GitLens explorer from expanding properly in certain cases
  • Fixes issues when refreshing nodes in the GitLens Results explorer

8.1.1 - 2018-03-12

Fixed

  • Fixes #276 - Lookup for branches without upstreams fails
  • Fixes the schema of the gitlens.codeLens.scopesByLanguage setting

8.1.0 - 2018-03-07

Added

  • Adds automatic issue linking to Bitbucket, GitHub, GitLab, and Visual Studio Team Services for commit messages in hovers

    Issue linking in commit messages

  • Adds support to toggle annotations for each file individually or for all files at once — closes #289

    Annotations toggle setting

    • Adds new controls the interactive settings editor (Open Settings from the Command Palette) to configure this new behavior
    • Adds gitlens.blame.toggleMode setting to specify how the gutter blame annotations will be toggled, per file or window
    • Adds gitlens.heatmap.toggleMode setting to specify how the gutter heatmap annotations will be toggled, per file or window
    • Adds gitlens.recentChanges.toggleMode setting to specify how the recently changed lines annotations will be toggled, per file or window
  • Adds icons to remotes in the GitLens explorer based on the remote service provider

  • Adds multi-cursor support to current line annotations — closes #291

Changed

  • Renames Compare Selected Ancestor with Working Tree command to Compare Ancestry with Working Tree and removes the need to select a branch first, since all compares are performed with the working tree — closes #279

Removed

  • Removes tag icons from the GitLens explorer

Fixed

  • Fixes #294 - Keyboard shortcuts will now default to chorded to avoid conflicts. Only affects new installs or if you remove the gitlens.keymap setting
  • Fixes issue where Recent Changes annotations weren't restored properly on tab switch
  • Fixes quick pick menu issue with commits with newlines in the message

8.0.2 - 2018-02-19

Fixed

  • Fixes button colors on the Welcome and Settings pages to follow the color theme properly

8.0.1 - 2018-02-18

Added

  • Adds Compare Index (HEAD) with Branch or Tag... (gitlens.explorers.diffHeadWithBranch) command - compares the index (HEAD) to the selected branch or tag — thanks to PR #278 by Geoffrey (@g3offrey)!
  • Adds Compare Working Tree with Branch or Tag... (gitlens.explorers.diffWorkingWithBranch) command - compares the working tree to the selected branch or tag
  • Adds gitlens.statusBar.reduceFlicker setting to specify whether to reduce the status bar "flickering" when changing lines by not first clearing the previous blame information — closes #272
  • Adds the Open File (gitlens.explorers.openFile) command to the GitLens explorer's inline toolbar for file nodes
  • Adds the Clear Results (gitlen.resultsExplorer.clearResultsNode) command to the GitLens Results explorer's inline toolbar for results nodes
  • Adds the Swap Comparison (gitlen.resultsExplorer.swapComparison) command to the GitLens Results explorer's inline toolbar and context menu for comparison results nodes
  • Adds Push to Commit (via Terminal) (gitlens.explorers.terminalPushCommit) command to commit nodes on the current branch in the GitLens explorer

Changed

  • Uses vscode's git.path setting when searching for the git executable

Fixed

  • Fixes #276 - Lookup for branches without upstreams fails
  • Fixes #274 - TextEditor is closed/disposed occurs when this extension is enabled
  • Fixes #288 - CSS errors on welcome page (mask-* properties)
  • Fixes issues with settings migration — should now migrate any existing settings that haven't already been set

8.0.0 - 2018-02-07

Added

  • Adds an all-new GitLens welcome page via the Welcome (gitlens.showWelcomePage) command — provides a welcome / onboarding experience — closes #51

    GitLens Welcome

  • Adds an all-new GitLens Settings editor via the Open Settings (gitlens.showSettingsPage) command — provides an easy-to-use interactive settings editor for many of GitLens' features — closes #167

    GitLens Settings

  • Adds a tree layout option to branches in the GitLens explorer — closes #258 thanks to PR #260 by Yukai Huang (@Yukaii)!

  • Adds Follow Renames command (gitlens.gitExplorer.setRenameFollowingOn) to the GitLens explorer History view to follow file renames in the history

  • Adds Don't Follow Renames command (gitlens.gitExplorer.setRenameFollowingOff) to the GitLens explorer History view to not follow file renames in the history

  • Adds gitlens.advanced.fileHistoryFollowsRenames setting to specify whether file histories will follow renames -- will affect how merge commits are shown in histories — closes #259

  • Adds gitlens.hovers.enabled setting to specify whether to provide any hovers

  • Adds gitlens.hovers.annotations.enabled setting to specify whether to provide any hovers when showing blame annotations

  • Adds gitlens.hovers.currentLine.enabled setting to specify whether to provide any hovers for the current line

  • Adds gitlens.showWhatsNewAfterUpgrades setting to specify whether to show What's New after upgrading to new feature releases

  • Adds debug option to the gitlens.outputLevel setting — outputs git commands to a new output channel called GitLens (Git)

Changed

  • Renames GitLens view to GitLens explorer
  • Renames Show Files in Automatic View (gitlens.gitExplorer.setFilesLayoutToAuto) command to Automatic Layout
  • Renames Show Files in List View (gitlens.gitExplorer.setFilesLayoutToList) command to List Layout
  • Renames Show Files in Tree View (gitlens.gitExplorer.setFilesLayoutToTree) command to Tree Layout
  • Renames Show Files in Automatic View (gitlens.resultsView.setFilesLayoutToAuto) command to Automatic Layout
  • Renames Show Files in List View (gitlens.resultsView.setFilesLayoutToAuto) command to List Layout
  • Renames Show Files in Tree View (gitlens.resultsView.setFilesLayoutToAuto) command to Tree Layout
  • Overhauls GitLens' settings for better clarity and ease-of-use
  • Renames gitlens.annotations.file.gutter.gravatars setting to gitlens.blame.avatars
  • Renames gitlens.annotations.file.gutter.compact setting to gitlens.blame.compact
  • Renames gitlens.annotations.file.gutter.dateFormat setting to gitlens.blame.dateFormat
  • Renames gitlens.annotations.file.gutter.format setting to gitlens.blame.format
  • Renames gitlens.annotations.file.gutter.heatmap.enabled setting to gitlens.blame.heatmap.enabled
  • Renames gitlens.annotations.file.gutter.heatmap.location setting to gitlens.blame.heatmap.location
  • Renames gitlens.blame.file.lineHighlight.enabled setting to gitlens.blame.highlight.enabled
  • Renames gitlens.blame.file.lineHighlight.locations setting to gitlens.blame.highlight.locations
  • Renames gitlens.annotations.file.gutter.separateLines setting to gitlens.blame.separateLines
  • Renames gitlens.codeLens.locations setting to gitlens.codeLens.scopes
  • Renames gitlens.codeLens.perLanguageLocations setting to gitlens.codeLens.scopesByLanguage
  • Renames gitlens.codeLens.customLocationSymbols setting to gitlens.codeLens.symbolScopes
  • Renames gitlens.annotations.line.trailing.dateFormat setting to gitlens.currentLine.dateFormat
  • Renames gitlens.blame.line.enabled setting to gitlens.currentLine.enabled
  • Renames gitlens.annotations.line.trailing.format setting to gitlens.currentLine.format
  • Renames gitlens.gitExplorer.gravatars setting to gitlens.explorers.avatars
  • Renames gitlens.gitExplorer.commitFileFormat setting to gitlens.explorers.commitFileFormat
  • Renames gitlens.gitExplorer.commitFormat setting to gitlens.explorers.commitFormat
  • Renames gitlens.gitExplorer.stashFileFormat setting to gitlens.explorers.stashFileFormat
  • Renames gitlens.gitExplorer.stashFormat setting to gitlens.explorers.stashFormat
  • Renames gitlens.gitExplorer.statusFileFormat setting to gitlens.explorers.statusFileFormat
  • Renames gitlens.annotations.file.gutter.hover.changes setting to gitlens.hovers.annotations.changes
  • Renames gitlens.annotations.file.gutter.hover.details setting to gitlens.hovers.annotations.details
  • Renames gitlens.annotations.file.gutter.hover.wholeLine setting to gitlens.hovers.annotations.over
  • Renames gitlens.annotations.line.trailing.hover.changes setting to gitlens.hovers.currentLine.changes
  • Renames gitlens.annotations.line.trailing.hover.details setting to gitlens.hovers.currentLine.details
  • Renames gitlens.annotations.line.trailing.hover.wholeLine setting to gitlens.hovers.currentLine.over
  • Renames gitlens.recentChanges.file.lineHighlight.locations setting to gitlens.recentChanges.highlight.locations

Removed

  • Removes gitlens.codeLens.debug setting, use gitlens.debug instead
  • Removes gitlens.blame.file.annotationType setting, use gitlens.hovers.annotations.enabled
  • Removes gitlens.blame.line.annotationType setting, use gitlens.currentLine.enabled or gitlens.hovers.currentLine.enabled instead
  • Removes gitlens.resultsView.gravatars setting, use gitlens.explorers.avatars instead
  • Removes gitlens.resultsView.commitFileFormat setting, use gitlens.explorers.commitFileFormat instead
  • Removes gitlens.resultsView.commitFormat setting, use gitlens.explorers.commitFormat instead
  • Removes gitlens.resultsView.showTrackingBranch setting
  • Removes gitlens.resultsView.stashFileFormat setting, use gitlens.explorers.stashFileFormat instead
  • Removes gitlens.resultsView.stashFormat setting, use gitlens.explorers.stashFormat instead
  • Removes gitlens.resultsView.statusFileFormat setting, use gitlens.explorers.statusFileFormat instead
  • Removes gitlens.annotations.file.hover.changes setting, use gitlens.hovers.annotations.changes instead
  • Removes gitlens.annotations.file.hover.details setting, use gitlens.hovers.annotations.details instead
  • Removes gitlens.annotations.file.hover.heatmap.enabled setting
  • Removes gitlens.annotations.file.recentChanges.hover.changes setting, use gitlens.hovers.annotations.changes instead
  • Removes gitlens.annotations.file.recentChanges.hover.details setting, use gitlens.hovers.annotations.details instead
  • Removes gitlens.annotations.line.hover.changes setting, use gitlens.hovers.annotations.changes instead
  • Removes gitlens.annotations.line.hover.details setting, use gitlens.hovers.annotations.details instead

Fixed

  • Fixes #35 - Copy Commit Sha to Clipboard not working (linux)
  • Fixes issue where the last commit of a file history would be broken (failed to parse correctly)
  • Fixes issue with Open Working File command (gitlens.openWorkingFile) failing when a file was renamed

7.5.10 - 2018-02-01

Added

  • Adds support for custom remotes with split project/repo url structure — closes #267

Fixed

  • Fixes #266 - Wrong time in Popup
  • Fixes #259 (again) - File history lists unrelated merge commits

7.5.9 - 2018-01-30

Fixed

  • Fixes #265 - Delete line pushes screen to the right (even if word wrap is on)

7.5.8 - 2018-01-29

Fixed

  • Fixes regression working with submodules
  • Fixes #262 - GitLens only available in SCM diff windows
  • Fixes #261 - Unable to open compare. The file is probably not under source control
  • Fixes missing avatars in file blame annotations in non-compact mode
  • Fixes file blame annotation highlight not being restored properly on tab switch

7.5.7 - 2018-01-25

Added

  • Adds a repository quick pick menu to the Show Commit Search command (gitlens.showCommitSearch) when there is no active repository

Fixed

  • Fixes #257 - Some branches fail to show history
  • Fixes #259 - File history lists unrelated merge commits

7.5.6 - 2018-01-22

Changed

  • Changes chorded keymap on Windows to use Ctrl+Shift+G rather than Ctrl+Alt+G to avoid issues
    • Also remaps Show SCM to Ctrl+Shift+G G since by default it is Ctrl+Shift+G if the chorded keymap is used
  • Refactors git log and stash output parsing — should be faster and far more robust

Fixed

  • Fixes #256 - Fails to copy commit message
  • Fixes #255 - Lines after an empty line in the commit message are not copied to clipboard
  • Fixes #252 - Cannot read property 'push' of undefined
  • Fixes issue where GitLens wouldn't detect the creation of a Git repository if there were no other repositories open
  • Fixes issue where some GitLens commands would show in the palette even though there was no repository
  • Fixes issue where navigating the history of a renamed file could cause errors
  • Fixes issue with using the gitlens.diffWithPrevious command option for Git CodeLens

7.5.5 - 2018-01-18

Fixed

  • Fixes #247 - File annotations button or ESC key does not turn off file annotations
  • Fixes issue where sometimes blame context wasn't available for the open editor when starting vscode

7.5.4 - 2018-01-17

Fixed

  • Fixes #249 - Gitlens disappears from the status bar
  • Fixes issue where Gravatars in the gutter blame annotations weren't restored on tab switch
  • Fixes issue where the id (sha) was missing in the hover blame annotations for uncommitted changes

7.5.3 - 2018-01-15

Fixed

  • Fixes #245 - CodeLens disappears/and reappears when auto-saving

7.5.2 - 2018-01-15

Fixed

  • Fixes #242 - Broken "gitlens.blame.line.enabled" setting

7.5.1 - 2018-01-15

Added

  • Adds Gravatar support to gutter and hover blame annotations
  • Adds gitlens.annotations.file.gutter.gravatars setting to specify whether to show gravatar images in the gutter blame annotations
  • Adds support for providing blame annotations, CodeLens, etc on files with unsaved changes — closes #112
  • Adds gitlens.defaultDateStyle setting to specify how dates will be displayed by default — closes #89
  • Adds Compare with Working Tree command (gitlens.explorers.compareWithWorking) to branch, tag, and revision (commit) nodes in the GitLens explorer to compare the current selection with the current working tree in the GitLens Results explorer
  • Adds Compare Selected Ancestor with Working Tree command (gitlens.explorers.compareSelectedAncestorWithWorking) to branch nodes in the GitLens explorer once another branch within the same repository has been selected to compare the merge base of current and previously selected branches with the working tree in the GitLens Results explorer — closes #240
  • Adds Merge Branch (via Terminal) command (gitlens.explorers.terminalMergeBranch) to branch nodes in the GitLens explorer
  • Adds Rebase (Interactive) Branch (via Terminal) command (gitlens.explorers.terminalRebaseBranch) to branch nodes in the GitLens explorer
  • Adds Cherry Pick Commit (via Terminal) command (gitlens.explorers.terminalRebaseBranch) to revision (commit) nodes in the GitLens explorer and GitLens Results explorer
  • Adds Revert Commit (via Terminal) command (gitlens.explorers.terminalRevertCommit) to revision (commit) nodes in the GitLens explorer and GitLens Results explorer
  • Adds Create Tag (via Terminal)... command (gitlens.explorers.terminalCreateTag) to branch and revision (commit) nodes in the GitLens explorer and GitLens Results explorer
  • Adds Delete Tag (via Terminal) command (gitlens.explorers.terminalDeleteTag) to tag nodes in the GitLens explorer
  • Adds a helpful notification the first time the GitLens Results explorer is shown

Changed

  • Switches to the explorer view before showing the GitLens Results explorer
  • Renames Rebase Commit (via Terminal) command (gitlens.terminalRebaseCommit) to Rebase to Commit (via Terminal)
  • Renames Reset Commit (via Terminal) command (gitlens.terminalResetCommit) to Reset to Commit (via Terminal)
  • Renames Compare Line Revision with Working command (gitlens.diffLineWithWorking) to Compare Line Revision with Working File
  • Renames Open Changes with Working Tree command (gitlens.openChangesWithWorking) to Open Changes with Working File
  • Deprecates gitlens.gitExplorer.gravatarsDefault setting, replaced by gitlens.defaultGravatarsStyle
  • Deprecates gitlens.resultsView.gravatarsDefault setting, replaced by gitlens.defaultGravatarsStyle

Fixed

  • Fixes issue where the GitLens Results explorer wouldn't properly update when replacing existing results
  • Fixes issue where showing commit search (file-based) results in the GitLens Results explorer wouldn't only show the matching files — closes #197
  • Fixes #238 - Show merge commits in file history
  • Fixes issue where the Tags node of the GitLens explorer wasn't updated on changes
  • Fixes issue where changes to .gitignore weren't detected properly
  • Fixes #241 - Adds default setting for .jsonc files to match Git CodeLens of .json files
  • Fixes issue where blame annotations and commands were missing from vscode Git staged revision documents
  • Fixes issue where opening changes for renamed files in the GitLens explorer and GitLens Results explorer wouldn't work properly
  • Fixes issue where file-specific menu commands show up on folders in the explorer

7.2.0 - 2018-01-01

Added

  • Adds on-demand heatmap annotations of the whole file — closes #182
    • Displays a heatmap (age) indicator near the gutter, which provides an easy, at-a-glance way to tell the age of a line
      • Indicator ranges from bright yellow (newer) to dark brown (older)
  • Adds Toggle File Heatmap Annotations command (gitlens.toggleFileHeatmap) to toggle the heatmap annotations on and off
  • Adds semi-persistent results for commit operations, via the Show Commit Details command (gitlens.showQuickCommitDetails) in the GitLens Results explorer — closes #237
  • Adds Show in Results option to the commit details quick pick menu to show the commit in the GitLens Results explorer
  • Adds Compare with Index (HEAD) command (gitlens.explorers.compareWithHead) to branch, tag, and revision (commit) nodes in the GitLens explorer to compare the current selection with the current index (HEAD) in the GitLens Results explorer
  • Adds Compare with Remote command (gitlens.explorers.compareWithRemote) to branch nodes in the GitLens explorer to compare the current selection with its remote tracking branch in the GitLens Results explorer

Changed

  • Improves startup performance and reduces package size

Fixed

  • Fixes #239 - gitlens.advanced.quickPick.closeOnFocusOut setting should be reversed
  • Fixes #208 - Gitlens doesn't work over UNC

7.1.0 - 2017-12-22

Added

  • Adds Open Working File command (gitlens.openWorkingFile) - opens the working file for the active file revision — closes #236
  • Adds Open Revision... command (gitlens.openFileRevision) - opens the selected revision for the active file
  • Adds tags to the Compare File with Branch... command (gitlens.diffWithBranch) — closes #204
  • Adds tags to the Directory Compare Working Tree with... command (gitlens.diffDirectory) — closes #204
  • Adds Show Branches and Tags to quick pick menu shown by the Compare File with Revision... command (gitlens.diffWithRevision) — closes #204
  • Adds Show Branches and Tags to quick pick menu shown by the Open Revision... command (gitlens.openFileRevision) — closes #204

Changed

  • Improves startup performance by ~65% (on my very fast PC) and reduces package size by over 75%
  • Renames Compare File with Branch... command (gitlens.diffWithBranch) to Compare File with Branch or Tag...

Fixed

  • Fixes issues with commit paging in certain quick pick menus
  • Fixes issues with certain quick pick menu progress indicators getting stuck in some cases
  • Fixes issues with menu choice placements on the editor title menu

7.0.0 - 2017-12-18

Added

  • Adds a new Active Repository node to the Repository View of the GitLens explorer — closes #224

    • Automatically updates to track the repository of the active editor
    • Only visible if there is more than 1 repository within the workspace
  • Adds a new Tags node to the Repository View of the GitLens explorer — closes #234

    • Provides a list of tags
    • Expand each tag to easily see its revision (commit) history
      • Expand each revision (commit) to quickly see the set of files changed, complete with status indicators for adds, changes, renames, and deletes
        • Provides a context menu on each revision (commit) with Open Commit in Remote, Open All Changes, Open All Changes with Working Tree, Open Files, Open Revisions, Copy Commit ID to Clipboard, Copy Commit Message to Clipboard, Show Commit Details, Compare with Selected, Select for Compare, Rebase Commit (via Terminal), Reset Commit (via Terminal), and Refresh commands
          • Provides a context menu on each changed file with Open Changes, Open Changes with Working Tree, Open File, Open Revision, Open File in Remote, Open Revision in Remote, Apply Changes, and Show Commit File Details commands
      • Provides a context menu on each tag with Compare with Selected, Select for Compare, Open Directory Compare with Working Tree, and Refresh commands
    • Provides a context menu with a Refresh command
  • Adds Gravatar support to the GitLens explorer

    • Adds gitlens.gitExplorer.gravatars setting to specify whether to show gravatar images instead of commit (or status) icons in the GitLens explorer
    • Adds gitlens.gitExplorer.gravatarsDefault setting to specify the style of the gravatar default (fallback) images in the GitLens explorer
      identicon - a geometric pattern
      mm - (mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash)
      monsterid - a monster with different colors, faces, etc
      retro - 8-bit arcade-style pixelated faces
      robohash - a robot with different colors, faces, etc
      wavatar - faces with differing features and backgrounds
    • Adds gitlens.resultsView.gravatars setting to specify whether to show gravatar images instead of commit (or status) icons in the GitLens Results explorer
    • Adds gitlens.resultsView.gravatarsDefault setting to specify the style of the gravatar default (fallback) images in the GitLens Results explorer
      identicon - a geometric pattern
      mm - (mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash)
      monsterid - a monster with different colors, faces, etc
      retro - 8-bit arcade-style pixelated faces
      robohash - a robot with different colors, faces, etc
      wavatar - faces with differing features and backgrounds
  • Adds Select for Compare command (gitlens.explorers.selectForCompare) to branch, remote branch, tag, and revision (commit) nodes in the GitLens explorer to mark the base reference of a comparison

  • Adds Compare with Selected command (gitlens.explorers.compareWithSelected) to branch, remote branch, tag, and revision (commit) nodes in the GitLens explorer once another reference within the same repository has been selected to compare the current selection with the previously selected reference in the GitLens Results explorer

  • Adds an all-new, on-demand GitLens Results explorer to the Explorer activity

    • Provides semi-persistent results for commit search operations, via the Show Commit Search command (gitlens.showCommitSearch), and file history operations, via the Show File History command (gitlens.showQuickFileHistory)

      • Expand each revision (commit) to quickly see the set of files changed, complete with status indicators for adds, changes, renames, and deletes
        • Provides a context menu on each revision (commit) with Open Commit in Remote, Open All Changes, Open All Changes with Working Tree, Open Files, Open Revisions, Copy Commit ID to Clipboard, Copy Commit Message to Clipboard, Show Commit Details, Compare with Selected, Select for Compare, Rebase Commit (via Terminal), Reset Commit (via Terminal), and Refresh commands
          • Provides a context menu on each changed file with Open Changes, Open Changes with Working Tree, Open File, Open Revision, Open File in Remote, Open Revision in Remote, Apply Changes, and Show Commit File Details commands
    • Provides semi-persistent results for revision comparison operations, via the Select for Compare command (gitlens.explorers.selectForCompare) and the Compare with Selected command (gitlens.explorers.compareWithSelected)

      • Commits node — provides a list of the commits between the compared revisions (branches or commits)
        • Expand each revision (commit) to quickly see the set of files changed, complete with status indicators for adds, changes, renames, and deletes
          • Provides a context menu on each revision (commit) with Open Commit in Remote, Open All Changes, Open All Changes with Working Tree, Open Files, Open Revisions, Copy Commit ID to Clipboard, Copy Commit Message to Clipboard, Show Commit Details, Compare with Selected, Select for Compare, Rebase Commit (via Terminal), Reset Commit (via Terminal), and Refresh commands
            • Provides a context menu on each changed file with Open Changes, Open Changes with Working Tree, Open File, Open Revision, Open File in Remote, Open Revision in Remote, Apply Changes, and Show Commit File Details commands
      • Changed Files node — provides a list of all the files changed between the compared revisions (branches or commits)
        • Expands to a file-based view of all changed files
          • Provides a context menu on each changed file with Open Changes, Open Changes with Working Tree, Open File, Open Revision, Open File in Remote, Open Revision in Remote, Apply Changes, and Show Commit File Details commands
      • Provides a context menu with Open Directory Compare and Refresh commands
    • Provides toolbar commands to Search Commits, Keep Results, Refresh, Show Files in Automatic View or Show Files in List View or Show Files in Tree View, and Close

  • Adds Apply Changes option to the commit/stash file quick pick menu — closes #232

  • Adds Show All Commits option to the commit search quick pick menu to show all the results, if there are more than the threshold

  • Adds Show in Results option to the commit search quick pick menu to show the results in the GitLens Results explorer

  • Adds Show in Results option to the file history quick pick menu to show the history in the GitLens Results explorer

Changed

  • Improves startup performance a bit
  • Renames Compare Directory with Branch... command (gitlens.diffDirectory) to Directory Compare Working Tree with...
  • Renames Compare Directory with Previous Revision in quick pick menus to Open Directory Compare with Previous Revision
  • Renames Compare Directory with Working Tree in quick pick menus to Open Directory Compare with Working Tree

Fixed

  • Fixes #228 - Gutter blame spills over heatmap
  • Fixes incorrect blame highlighting — thanks to PR #231 by Alexey Vasyukov (@notmedia)!
  • Fixes issue with the Open in File/Revision option in the file history quick pick menu
  • Fixes issues with Git warnings when parsing log status output (can cause the GitLens explorer to not show data in some cases)
  • Fixes 🤞 #226 - Annotations show in Debug Console

6.4.0 - 2017-12-12

Added

  • Adds gitlens.keymap setting to specify the keymap to use for GitLens shortcut keys — closes #104
    • standard - adds a standard set of shortcut keys
    • chorded - adds a chorded set of shortcut keys that all start with Ctrl+Alt+G (⌥⌘G on macOS)
    • none - no shortcut keys will be added
  • Adds progress indicator to the Show Stashed Changes command (gitlens.showQuickStashList)
  • Adds progress indicator to the Apply Stashed Changes command (gitlens.stashApply)

Changed

  • Overhauls the internal way GitLens deals with Uris and revisions should be far more robust and lead to many fewer edge-case issues
  • Aligns quick pick menu commands more with the GitLens explorer context menus

Fixed

  • Fixes #220 - Open Revision quick pick results in empty file
  • Fixes so, SO, many bugs through the refactor/overhaul of GitLens' Uri handling

6.3.0 - 2017-11-30

Added

  • Adds support for files with staged changes
    • Adds new entry in the History View of the GitLens explorer
    • Adds new entry in the Repository View of the GitLens explorer
    • Adds blame annotations, navigation & comparison commands, etc
  • Adds support for vscode's Git file revisions (e.g. Open File (HEAD)) and diffs (e.g. Open Changes)
    • Adds new entry in the History View of the GitLens explorer
    • Adds blame annotations, navigation & comparison commands, etc
  • Adds Git CodeLens to Git file revisions (GitLens or vscode's)

Fixed

  • Fixes 🤞 #202 - Staged change's vscode diff side-by-side view shows the wrong history
  • Fixes 🤞 #216 - PowerShell session not started if GitLens is enabled
  • Fixes #217 - empty editor has git lens in status bar with old information
  • Fixes #218 - Cannot read property 'replace' of undefined
  • Fixes issue with feedback when searching for commits without any matches
  • Fixes issue where quick pick menu progress indicators could get stuck

6.2.0 - 2017-11-27

Added

  • Adds theming support - vscode themes can now specify GitLens colors as well as directly by using workbench.colorCustomization)
    • Adds gitlens.gutterBackgroundColor themable color
    • Adds gitlens.gutterForegroundColor themable color
    • Adds gitlens.gutterUncommittedForegroundColor themable color
    • Adds gitlens.trailingLineBackgroundColor themable color
    • Adds gitlens.trailingLineForegroundColor themable color
    • Adds gitlens.lineHighlightBackgroundColor themable color
    • Adds gitlens.lineHighlightOverviewRulerColor themable color
  • Adds gitlens.advanced.messages setting to specify which messages should be suppressed

Changed

  • Renames gitlens.theme.annotations.file.gutter.separateLines setting to gitlens.annotations.file.gutter.separateLines
  • Changes from using globalState to use gitlens.advanced.messages setting for message suppression - provides more control and avoids strange intermittent with globalState
  • Changes gitlens.strings.codeLens.unsavedChanges.recentChangeAndAuthors setting default to Unsaved changes (cannot determine recent change or authors)
  • Changes gitlens.strings.codeLens.unsavedChanges.recentChangeOnly setting default to Unsaved changes (cannot determine recent change)
  • Changes gitlens.strings.codeLens.unsavedChanges.authorsOnly setting default to Unsaved changes (cannot determine authors)

Removed

  • Removes gitlens.theme.* settings - now using built-in theme support

Fixed

  • Fixes #211 - Unsaved CodeLens appears on untracked files
  • Fixes issue where Open * in Remote commands are sometimes missing

6.1.2 - 2017-11-21

Fixed

  • Fixes #207 - Applying and deleting stashes suddenly stopped working
  • Fixes #205 - Toggle Line Blame Annotations disappeared after last update
  • Fixes #203 - Open Changed Files is broken
  • Fixes #176 - Line annotations sometimes mess with white space

6.1.1 - 2017-11-17

Fixed

  • Fixes #201 - "Open in Remote" commands should check for branch upstream tracking
  • Fixes #200 - Submodule using terminal command, root directory is incorrect

6.1.0 - 2017-11-13

Added

  • Adds support for nested repositories and submodules — closes #198
  • Adds gitlens.advanced.repositorySearchDepth setting to specify how many folders deep to search for repositories

Changed

  • Changes to use diff.guitool first if available, before falling back to diff.tool — closes #195

Fixed

  • Fixes issue where failed git commands would get stuck in the pending queue causing future similar commands to also fail
  • Fixes issue where changes to git remotes would refresh the entire GitLens explorer

6.0.0 - 2017-11-08

Added

  • Adds multi-root workspace support — Learn more
  • Adds new logo/icon
  • Adds indicator dots on the branch node(s) of the GitLens explorer which denote the following:
    • None - no upstream or up-to-date with the upstream
    • Green - ahead of the upstream
    • Red - behind the upstream
    • Yellow - both ahead of and behind the upstream
  • Adds progress indicator to the Search Commits command (gitlens.showCommitSearch)
  • Adds code search support to the Search Commits command (gitlens.showCommitSearch) — closes #127
    • Use ~<regex> to search for commits with differences whose patch text contains added/removed lines that match <regex>
    • Use =<regex> to search for commits with differences that change the number of occurrences of the specified string (i.e. addition/deletion) in a file
  • Adds support to the Compare File with Branch... command (gitlens.diffWithBranch) work with renamed files — closes #165
  • Adds Compare File with Branch... command (gitlens.diffWithBranch) to source control resource context menu
  • Adds Open Repository in Remote command (gitlens.openRepoInRemote) to repository node(s) of the GitLens explorer
  • Adds Enable Automatic Refresh command (gitlens.gitExplorer.setAutoRefreshToOn) to the GitLens explorer regardless of the current view
  • Adds Disable Automatic Refresh command (gitlens.gitExplorer.setAutoRefreshToOff) to the GitLens explorer regardless of the current view
  • Adds new Git terminal commands to the GitLens explorer - opens a GitLens terminal and sends the specified Git command to it
    • Adds Checkout Branch (via Terminal) command (gitlens.terminalCheckoutBranch) to branch node(s) of the GitLens explorer
    • Adds Create Branch (via Terminal)... command (gitlens.terminalCreateBranch) to branch node(s) of the GitLens explorer
    • Adds Delete Branch (via Terminal) command (gitlens.terminalDeleteBranch) to branch node(s) of the GitLens explorer
    • Adds Rebase Branch to Remote (via Terminal) command (gitlens.terminalRebaseBranchToRemote) to branch node(s) of the GitLens explorer
    • Adds Squash Branch into Commit (via Terminal) command (gitlens.terminalSquashBranchIntoCommit) to branch node(s) of the GitLens explorer
    • Adds Rebase Commit (via Terminal) command (gitlens.terminalRebaseCommit) to commit node(s) of the GitLens explorer
    • Adds Reset Commit (via Terminal) command (gitlens.terminalResetCommit) to commit node(s) of the GitLens explorer
    • Adds Remove Remote (via Terminal) command (gitlens.terminalRemoveRemote) to remote node(s) of the GitLens explorer
  • Adds ability to specify the url protocol used with user-defined remote services via gitlens.remotes setting — thanks to PR #192 by Helmut Januschka (@hjanuschka)!

Changed

  • GitLens explorer will no longer show if there is no Git repository — closes #159
  • Optimizes event handling, executing git commands, and general processing to improve performance and reduce any lag
  • Optimizes current line hover annotations to only be computed on hover (i.e. lazily evaluated) to reduce the compute required when changing lines
  • Protects credentials from possibly being affected by poor network conditions via Git Credential Manager (GCM) for Windows environment variables
  • Delays (slightly) the initial loading of the GitLens explorer to improve startup performance

Fixed

  • Fixes jumpy CodeLens when deleting characters from a line with a Git CodeLens
  • Fixes #178 - Slight but noticeable keyboard lag with Gitlens
  • Fixes #183 - Remote with same url should only show once
  • Fixes #185 - Wrong relative date shows on mouse hover
  • Fixes issue where using the Refresh command on a GitLens explorer node refreshed the whole view, rather than just the node
  • Fixes issue where certain commands fail when there is no current branch (rebase, detached HEAD, etc)

5.7.1 - 2017-10-19

Fixed

  • Fixes #174 - File Blame Annotations No Longer Working (and some other editor-based commands)

5.7.0 - 2017-10-19

Added

  • Adds Open All Changes (with difftool) command (gitlens.externalDiffAll) - opens all working changes with the configured git difftool — closes #164
    • Also adds the command to the Source Control group context menu
  • Adds gitlens.gitExplorer.autoRefresh setting to specify whether to automatically refresh the GitLens explorer when the repository or the file system changes
  • Adds Enable Automatic Refresh command (gitlens.gitExplorer.setAutoRefreshToOn) to enable the automatic refresh of the GitLens explorer
  • Adds Disable Automatic Refresh command (gitlens.gitExplorer.setAutoRefreshToOff) to disable the automatic refresh of the GitLens explorer
  • Adds Show Files in Automatic View command (gitlens.gitExplorer.setFilesLayoutToAuto) to change to an automatic layout for the files in the GitLens explorer
  • Adds Show Files in List View command (gitlens.gitExplorer.setFilesLayoutToList) to change to a list layout for the files in the GitLens explorer
  • Adds Show Files in Tree View command (gitlens.gitExplorer.setFilesLayoutToTree) to change to a tree layout for the files in the GitLens explorer

Changed

  • Renames Directory Compare command (gitlens.diffDirectory) to Compare Directory with Branch...
  • Renames Directory Compare with Previous Commit in quick pick menus to Compare Directory with Previous Commit
  • Renames Directory Compare with Working Tree in quick pick menus to Compare Directory with Working Tree
  • Changes the marketplace keywords for better discoverability

Fixed

  • Fixes #163 - GitLens can cause git locking in the background
  • Fixes issues tracking the active editor in the History View of the GitLens explorer
  • Fixes issue where the GitLens explorer would refresh more than once when a file system change was detected
  • Fixes issue where opening commit search could be filled out with #00000000

5.6.5 - 2017-10-16

Removed

  • Removes gitlens.advanced.gitignore.enabled setting since its usage has been replaced by a tracked file cache

Fixed

  • Fixes issues with tracked files which are ignored via .gitignore not working properly

5.6.4 - 2017-10-12

Fixed

  • Fixes #168 - Git environment context was missing

5.6.3 - 2017-10-12

Changed

  • Swaps out Moment.js for date-fns to improve blame annotation performance and to reduce the GitLens bundle size (saves ~400kb)

Fixed

  • Fixes issue where the Toggle File Blame Annotations command (gitlens.toggleFileBlame) wasn't available after a file was saved

5.6.2 - 2017-10-11

Fixed

  • Fixes issue where Open File command failed for in many instances (for GitUri resources)

5.6.1 - 2017-10-11

Fixed

  • Fixes issue where diffs for stashed files were often wrong (missing)

5.6.0 - 2017-10-11

Added

  • Adds changes (diff) hover annotation support to both the gutter and hover file blame annotations
  • Adds gitlens.annotations.file.gutter.hover.changes setting to specify whether to provide a changes (diff) hover annotation over the gutter blame annotations
  • Adds gitlens.annotations.file.hover.details setting to specify whether to provide a commit details hover annotation over each line
  • Adds gitlens.annotations.file.hover.changes setting to specify whether to provide a changes (diff) hover annotation over each line

Changed

  • Changes gitlens.codeLens.customLocationSymbols setting to both include and exclude (using a ! prefix) symbols and therefore is always applied

Removed

  • Removes Custom from the gitlens.codeLens.locations setting as it wasn't really required
  • Removes properties (symbol Property) from being included in the Blocks option of the gitlens.codeLens.locations setting — can be easily re-added by setting "gitlens.codeLens.customLocationSymbols": [ "Property" ] if desired
  • Removes gitlens.annotations.file.hover.wholeLine setting as it didn't really make sense

Fixed

  • Fixes issue where changing gitlens.blame.file.annotationType wouldn't correctly update the blame annotations if they were currently active
  • Fixes issue where isBlameable context could be set incorrectly leading to blame icon showing up on invalid documents

5.5.0 - 2017-10-09

Added

  • Adds a quick-access command bar to the bottom of the details hover annotations

    Details Blame Annotation (hover)

    • Provides Open Changes, Blame Previous Revision, Open in Remote, and Show More Actions command buttons
  • Adds support for remembering file annotations when switching tabs

  • Adds full GitLens support for file revisions — file & line annotations, commands, etc

Changed

  • Changes gitlens.annotations.file.gutter.hover.wholeLine setting to default to true

Removed

  • Removes peek-style file & blame history explorers - see #66 for more details
    • Removes Open Blame History Explorer command (gitlens.showBlameHistory)
    • Removes Open File History Explorer command (gitlens.showFileHistory)
    • Removes "gitlens.showBlameHistory" & "gitlens.showFileHistory" option from gitlens.codeLens.recentChange.command setting
    • Removes "gitlens.showBlameHistory" & "gitlens.showFileHistory" option from gitlens.codeLens.authors.command setting
    • Removes "gitlens.showBlameHistory" & "gitlens.showFileHistory" option from gitlens.statusBar.command setting
  • Removes gitlens.advanced.toggleWhitespace.enabled setting — as it is no longer required

Fixed

  • Fixes #161 - Remove colors from output of git command calls

5.4.1 - 2017-10-03

Changed

  • Changes annotation hovers to only add Open in Remote and Show Commit Details commands when applicable — thanks to PR #158 by SpaceEEC (@SpaceEEC)!

Fixed

  • Fixes issue where Changes hover annotation displayed incorrect info when there was no previous commit — thanks to PR #158 by SpaceEEC (@SpaceEEC)!
  • Fixes issue when checking for remotes could return no remotes even if remotes are configured

5.4.0 - 2017-09-30

Added

  • Adds support for user-defined remote services via gitlens.remotes setting — closes #148
  • Adds Open Changes (with difftool) command (gitlens.externalDiff) - opens the changes of a file or set of files with the configured git difftool — thanks to PR #154 by Chris Kaczor (@ckaczor)!
    • Adds to the source control group and source control resource context menus

5.3.0 - 2017-09-26

Added

  • Adds new file layouts to the GitLens explorer
    • auto - automatically switches between displaying files as a tree or list based on the gitlens.gitExplorer.files.threshold setting and the number of files at each nesting level
    • list - displays files as a list
    • tree - displays files as a tree
  • Adds gitlens.gitExplorer.files.layout setting to specify how the GitLens explorer will display files
  • Adds gitlens.gitExplorer.files.compact setting to specify whether to compact (flatten) unnecessary file nesting in the GitLens explorer
  • Adds gitlens.gitExplorer.files.threshold setting to specify when to switch between displaying files as a tree or list based on the number of files in a nesting level in the GitLens explorer
  • Adds ${directory} token to the file formatting settings

Changed

  • Changes ${path} token to be the full file path in the file formatting settings

Fixed

  • Fixes #153 - New folders treated as files in "Changed Files" section of the sidebar component

5.2.0 - 2017-09-23

Added

  • Adds new Changed Files node to the Repository Status node of the GitLens explorer's Repository View — closes #139
    • Provides an at-a-glance view of all "working" changes
    • Expands to a file-based view of all changed files in the working tree (enabled via "gitlens.insiders": true) and/or all files in all commits ahead of the upstream
  • Adds optional (on by default) working tree status information to the Repository Status node in the GitLens explorer
  • Adds auto value to gitlens.gitExplorer.view setting - closes #150
  • Adds gitlens.gitExplorer.enabled setting to specify whether to show the GitLens explorer - closes #144
  • Adds gitlens.gitExplorer.includeWorkingTree setting to specify whether to include working tree files inside the Repository Status node of the GitLens explorer
  • Adds gitlens.gitExplorer.statusFileFormat setting to the format of the status of a working or committed file in the GitLens explorer

Changed

  • Changes the sorting (now alphabetical) of files shown in the GitLens explorer
  • Changes the default of the gitlens.gitExplorer.view setting to auto
  • Changes the default of the gitlens.gitExplorer.commitFormat setting to add parentheses around the commit id
  • Removes many menu items from editor/title & editor/title/context by default — can be re-enabled via the gitlens.advanced.menus setting

Fixed

  • Fixes #146 - Blame gutter annotation issue when commit contains emoji
  • Fixes an issue when running Open File in Remote with a multi-line selection wasn't properly opening the selection in GitLab — thanks to PR #145 by Amanda Cameron (@AmandaCameron)!
  • Fixes an issue where the gitlens.advanced.menus setting wasn't controlling all the menu items properly

5.1.0 - 2017-09-15

Added

  • Adds full (multi-line) commit message to the details hover annotations — closes #116
  • Adds an external link icon to the details hover annotations to run the Open Commit in Remote command (gitlens.openCommitInRemote)

Changed

  • Optimizes performance of the providing blame annotations, especially for large files (saw a ~78% improvement on some files)
  • Optimizes date handling (parsing and formatting) for better performance and reduced memory consumption

Removed

  • Removes gitlens.annotations.file.recentChanges.hover.wholeLine setting as it didn't really make sense

Fixed

  • Fixes an issue where stashes with only untracked files would not show in the Stashes node of the GitLens explorer
  • Fixes an issue where stashes with untracked files would not show its untracked files in the GitLens explorer

5.0.0 - 2017-09-12

Added

  • Adds an all-new GitLens explorer to the Explorer activity

    • Repository View - provides a full repository explorer

      GitLens Repository view

      • Repository Status node — provides the status of the repository

        • Provides the name of the current branch, its upstream tracking branch (if available), and its upstream status (if available)
        • Provides indicator dots on the repository icon which denote the following:
          • None - up-to-date with the upstream
          • Green - ahead of the upstream
          • Red - behind the upstream
          • Yellow - both ahead of and behind the upstream
        • Provides additional nodes, if the current branch is not synchronized with the upstream, to quickly see and explore the specific commits ahead and/or behind the upstream
        • Provides a context menu with Open Repository in Remote, and Refresh commands
      • Branches node — provides a list of the local branches

        • Indicates which branch is the current branch and optionally shows the remote tracking branch
        • Expand each branch to easily see its revision (commit) history
          • Expand each revision (commit) to quickly see the set of files changed, complete with status indicators for adds, changes, renames, and deletes
            • Provides a context menu on each changed file with Open Changes, Open Changes with Working Tree, Open File, Open Revision, Open File in Remote, Open Revision in Remote, Apply Changes, Show File History, and Show Commit File Details commands
          • Provides a context menu on each revision (commit) with Open Commit in Remote, Open All Changes, Open All Changes with Working Tree, Open Files, Open Revisions, Copy Commit ID to Clipboard, Copy Commit Message to Clipboard, Show Commit Details, and Refresh commands
          • Provides a context menu on each branch with Open Branch in Remote, and Refresh commands
        • Provides a context menu with Open Branches in Remote, and Refresh commands
      • Remotes node — provides a list of remotes

        • Indicates the direction of the remote (fetch, push, both), remote service (if applicable), and repository path
        • Expand each remote to see its list of branches
          • Expand each branch to easily see its revision (commit) history
            • Expand each revision (commit) to quickly see the set of files changed, complete with status indicators for adds, changes, renames, and deletes
              • Provides a context menu on each changed file with Open Changes, Open Changes with Working Tree, Open File, Open Revision, Open File in Remote, Open Revision in Remote, Apply Changes, and Show Commit File Details commands
            • Provides a context menu on each revision (commit) with Open Commit in Remote, Open All Changes, Open All Changes with Working Tree, Open Files, Open Revisions, Copy Commit ID to Clipboard, Copy Commit Message to Clipboard,Show Commit Details, and Refresh commands
          • Provides a context menu on each remote with Open Branches in Remote, Open Repository in Remote, and Refresh commands
        • Provides a context menu with a Refresh command
      • Stashes node — provides a list of stashed changes

        • Expand each stash to quickly see the set of files stashed, complete with status indicators for adds, changes, renames, and deletes
        • Provides a context menu with Stash Changes, and Refresh commands
        • Provides a context menu on each stash with Apply Stashed Changes (confirmation required), Delete Stashed Changes (confirmation required), Open All Changes, Open All Changes with Working Tree, Open Files, Open Revisions, Copy Commit Message to Clipboard, and Refresh commands
        • Provides a context menu on each stashed file with Apply Changes, Open Changes, Open Changes with Working Tree, Open File, Open Revision, Open File in Remote, and Show File History commands
    • File History View - provides the revision history of the active file

      GitLens File History view

      • Automatically updates to track the active editor
      • Provides a context menu with Open File, Open File in Remote, and Refresh commands
      • Provides a context menu on each revision (commit) with Open Changes, Open Changes with Working Tree, Open File, Open Revision, Open File in Remote, Open Revision in Remote, Apply Changes, and Show Commit File Details commands
    • Quickly switch between views using the Switch to Repository View or Switch to File History View commands

    • Provides toolbar commands to Search Commits, Switch to Repository View or Switch to File History View, and Refresh

  • Adds all-new interactivity to the hover annotations

    Hover Annotations

    • Adds the following command-links to the details hover annotation
      • Clicking the commit id will run the Show Commit Details command
    • Adds the following command-links to the changes hover annotation
      • Clicking on Changes will run the Open Changes command
      • Clicking the current and previous commit ids will run the Show Commit Details command
  • Adds support for remote services with custom domains — closes #120

  • Adds support for the Bitbucket Server (previously called Stash) remote service — closes #120

  • Adds gitlens.blame.ignoreWhitespace setting to specify whether to ignore whitespace when comparing revisions during blame operations — closes #138

  • Adds Compare File Revisions command (gitlens.diffWith) - compares the specified file revisions

  • Adds Open Branches in Remote command (gitlens.openBranchesInRemote) - opens the branches in the supported remote service

  • Adds Stash Changes command (gitlens.stashSave) to the source control group context menu — can now stash a group of files

  • Adds Stash Changes command (gitlens.stashSave) to the source control resource context menu — can now stash individual files (works with multi-select too!)

  • Adds gitlens.gitExplorer.view setting to specify the starting view (mode) of the GitLens explorer

  • Adds gitlens.gitExplorer.showTrackingBranch setting to specify whether to show the tracking branch when displaying local branches in the GitLens explorer

  • Adds gitlens.gitExplorer.commitFormat setting to specify the format of committed changes in the GitLens explorer

  • Adds gitlens.gitExplorer.commitFileFormat setting to specify the format of a committed file in the GitLens explorer

  • Adds gitlens.gitExplorer.stashFormat setting to specify the format of stashed changes in the GitLens explorer

  • Adds gitlens.gitExplorer.stashFileFormat setting to specify the format of a stashed file in the GitLens explorer

  • Adds ${filePath} token to file formatting settings

Changed

  • Changes Show Stashed Changes option icon in repository status quick pick menu to match the GitLens explorer
  • Changes Stash Changes option icon in stashed changes quick pick menu to a plus (+)
  • Renames Compare File with Previous command (gitlens.diffWithPrevious) to Compare File with Previous Revision
  • Renames Compare File with Next Commit command (gitlens.diffWithNext) to Compare File with Next Revision
  • Renames Compare File with Working Tree command (gitlens.diffWithWorking) to Compare File with Working Revision
  • Renames Compare Line Commit with Previous command (gitlens.diffLineWithPrevious) to Compare Line Revision with Previous
  • Renames Compare Line Commit with Working Tree command (gitlens.diffLineWithWorking) to Compare Line Revision with Working

Removed

  • Removes Git Stashes view - as it's functionality has been folded into the new GitLens explorer
  • Removes gitlens.stashExplorer.stashFormat setting
  • Removes gitlens.stashExplorer.stashFileFormat setting
  • Removes Stash Unstaged Changes option from stashed changes quick pick menu — didn't work as intended
  • Removes the seeding of the commit search command from the clipboard

Fixed

  • Fixes an issue where double hover annotations could be shown on blank lines
  • Fixes an issue where remote branches couldn't be opened properly in their remote service
  • Fixes #130 - First-run "Thank you for choosing GitLens! [...]" info message shown on every start up
  • Fixes an issue where sometimes diffs (via branch name) wouldn't open properly
  • Fixes an issue where remotes are queried more than once on startup

4.4.3 - 2017-08-30

Fixed

  • Fixes #135 - Full-width characters break gutter annotations (really this time)

4.4.2 - 2017-08-29

Fixed

  • Fixes #135 - Full-width characters break gutter annotations

4.4.1 - 2017-08-23

Fixed

  • Fixes #114 - Stylus files makes CodeLens freak out

4.4.0 - 2017-08-18

Added

  • Adds a progress indicator to the Toggle File Blame Annotations command (gitlens.toggleFileBlame) icon — pulses while annotations are computed
  • Adds an active state to the Toggle File Blame Annotations command (gitlens.toggleFileBlame) icon — turns orange while the annotations are visible
  • Adds automatic disabling of the current line blame annotations when starting a debug session and will restore them when the debug session ends — can still be manually toggled via the Toggle Line Blame Annotations command (gitlens.toggleLineBlame)

Changed

  • Changes chat links from Gitter to Slack
  • Changes the look of the line separators on the gutter blame annotations
  • Changes the gitlens.advanced.toggleWhitespace.enabled configuration setting to default to false — thanks to the awesome work in vscode by Alexandru Dima (@alexandrudima) this is no longer required!

Removed

  • Removes unneeded gitlens.stashExplorer.enabled configuration setting since users can add or remove views natively now
  • Removes unneeded Toggle Git Stashes Explorer command (gitlens.stashExplorer.toggle) since users can add or remove views natively now
  • Removes the gitlens.theme.annotations.file.hover.separateLines configuration setting

Fixed

  • Fixes jumpiness when opening a diff to a certain line

4.3.3 - 2017-07-28

Added

  • Adds progress indicator for when computing annotations takes a while

Changed

  • Optimizes performance of the providing blame annotations, especially for large files (saw a 3.5x improvement on some files)

Fixed

  • Fixes #107 - Double-byte characters break blame layout (still requires proper font support)

4.3.2 - 2017-07-20

Fixed

  • Fixes #118 - GitLens stopped working on latest insiders build — thanks to PR #121 by Johannes Rieken (@jrieken)

4.3.1 - 2017-07-03

Added

  • Adds gitlens.stashExplorer.enabled setting to specify whether to show the Git Stashes view
  • Adds Toggle Git Stashes Explorer command (gitlens.stashExplorer.toggle) - toggles the Git Stashes view on and off

Changed

  • Hides the Git Stashes view by default

Fixed

  • Fixes #108 - Option to remove stash explorer from the main explorer?

4.3.0 - 2017-07-03

Added

  • Adds Git Stashes view to the Explorer activity
    • Shows all of the stashed changes in the repository
    • Provides toolbar buttons to Stash Changes and Refresh
    • Provides a context menu with Apply Stashed Changes and Delete Stashed Changes commands - both require a confirmation
    • Expand each stash to quickly see the set of files changed, complete with status indicators for adds, changes, renames, and deletes
      • Provides a context menu with Open Changes, Open File, Open Stashed File, Open File in Remote, and Compare File with Working Tree commands

4.2.0 - 2017-06-27

Added

  • Adds Compare File with Revision... command (gitlens.diffWithRevision) - compares the active file with the selected revision of the same file
  • Adds Open Changed Files command (gitlens.openChangedFiles) to the source control group context menu
  • Adds Close Unchanged Files command (gitlens.closeUnchangedFiles) to the source control group context menu
  • Adds Open File in Remote command (gitlens.openFileInRemote) to the source control resource context menu
  • Adds Compare File with Revision... command (gitlens.diffWithRevision) to the source control resource context menu
  • Adds Show File History command (gitlens.showQuickFileHistory) to the source control resource context menu

Changed

  • Renames Compare File with... command to Compare File with Branch...
  • Renames Open Line Commit in Remote command to Open Commit in Remote
  • Renames Show Line Commit Details command to Show Commit File Details
  • Updates the description of gitlens.blame.line.enabled to be clearer about its behavior
  • Updates the description of gitlens.codeLens.enabled to be clearer about its behavior

Fixed

  • Fixes #103 - Toggle file blame annotations disables line blame annotations if line blame annotations are off by default
  • Fixes another infinite loop in the Close Unchanged Files command

4.1.4 - 2017-06-25

Changed

  • Optimizes performance of the Compare with Previous commands - also avoids trying to focus a line if we don't have one

Fixed

  • Fixes changes (diff) hover not showing the correct previous line (for real this time)
  • Attempts to fix #99 - undo/redo spawns too many git processes

4.1.3 - 2017-06-20

Fixed

  • Fixes changes (diff) hover not showing the correct previous line when showing recent changes annotations of the whole-file

4.1.2 - 2017-06-15

Fixed

  • Fixes #96 - External diff command can be unintentionally triggered

4.1.1 - 2017-06-13

Added

  • Adds an alt command to the Toggle File Blame Annotations command button, which when you hold down alt and click it will execute the Toggle Recent File Changes Annotations command instead

Fixed

  • Fixes missing Toggle File Blame Annotations command icon

4.1.0 - 2017-06-13

Added

  • Adds all-new recent changes annotations of the whole-file - annotates and highlights all the lines changed in the most recent commit
  • Adds Toggle Recent File Changes Annotations command (gitlens.toggleFileRecentChanges) - toggles the recent changes annotations on and off
  • Adds ability to press Escape to quickly toggle any whole-file annotations off
  • Improves performance
    • Optimized git output parsing to increase speed and dramatically reduce memory usage
    • Defers diff chunk parsing until it is actually required
  • Adds gitlens.defaultDateFormat setting to specify how all absolute dates will be formatted by default

Fixed

  • Fixes excessive memory usage when parsing diffs
  • Fixes extra newline in multi-line commit messages
  • Fixes (again) #33 - Commit messages can causes markdown formatting in hovers

4.0.1 - 2017-06-09

Fixed

  • Fixes #87 - Can't open files in remote when using git@ urls (ssh)

4.0.0 - 2017-06-09

Added

  • Adds all-new, beautiful, highly customizable and themable, file blame annotations
  • Adds all-new configurability and themeability to the current line blame annotations
  • Adds all-new configurability to the status bar blame information
  • Adds all-new configurability over which commands are added to which menus via the gitlens.advanced.menus setting
  • Adds better configurability over where Git CodeLens will be shown — both by default and per language
  • Adds an all-new changes (diff) hover annotation to the current line - provides instant access to the line's previous version
  • Adds Toggle Line Blame Annotations command (gitlens.toggleLineBlame) - toggles the current line blame annotations on and off
  • Adds Show Line Blame Annotations command (gitlens.showLineBlame) - shows the current line blame annotations
  • Adds Toggle File Blame Annotations command (gitlens.toggleFileBlame) - toggles the file blame annotations on and off
  • Adds Show File Blame Annotations command (gitlens.showFileBlame) - shows the file blame annotations
  • Adds Open File in Remote command (gitlens.openFileInRemote) to the editor/title context menu
  • Adds Open Repo in Remote command (gitlens.openRepoInRemote) to the editor/title context menu
  • Adds gitlens.strings.* settings to allow for the customization of certain strings displayed
  • Adds gitlens.theme.* settings to allow for the theming of certain elements
  • Adds gitlens.advanced.telemetry.enabled settings to explicitly opt-in or out of telemetry, but still ultimately honors the telemetry.enableTelemetry setting
  • Adds ability to suppress most warning messages - which can be re-enabled using the Reset Suppressed Warnings command (gitlens.resetSuppressedWarnings)

Changed

  • (BREAKING) Almost all of the GitLens settings have either been renamed, removed, or otherwise changed - see the README`
  • Changes the positioning of the Git CodeLens to try to be at the end of any other CodeLens on the same line
  • Changes the position of the Open File in Remote command (gitlens.openFileInRemote) in the context menus - now in the navigation group
  • Changes the Toggle Git CodeLens command (gitlens.toggleCodeLens) to always toggle the Git CodeLens on and off
  • Changes the default of gitlens.advanced.toggleWhitespace.enabled back to true, but automatically disables whitespace toggling if whitespace rendering is not on

Removed

  • Removes the on-demand trailing file blame annotations — didn't work out and just ended up with a ton of visual noise
  • Removes Toggle Blame Annotations command (gitlens.toggleBlame) - replaced by the Toggle File Blame Annotations command (gitlens.toggleFileBlame)
  • Removes Show Blame Annotations command (gitlens.showBlame) - replaced by the Show File Blame Annotations command (gitlens.showFileBlame)

Fixed

  • Fixes #81 - Current line annotation feels too sticky
  • Fixes #83 - Calling "close unchanged files" results in no new files being openable
  • Fixes issues with the zone.js monkey patching done by application insights (telemetry) - disables all the monkey patching
  • Fixes issue with Open Branch in Remote & Open Repository in Remote not showing when there are no open editors

3.6.1 - 2017-06-07

Fixed

  • Fixes issues with the zone.js monkey patching done by application insights (telemetry) - disables all the monkey patching

3.6.0 - 2017-06-02

Added

  • Adds diff information (the line's previous version) into the active line hover
  • Adds a gitlens.diffWithWorking status bar command option - compares the current line commit with the working tree

Changed

  • Changes the behavior of the Compare File with Working Tree command (gitlens.diffWithWorking) - always does what it says :)
    • Compares the current file with the working tree — if the current file is the working file, it will show a File matches the working tree message
  • Changes the behavior of the Compare File with Previous command (gitlens.diffWithPrevious) - always does what it says :)
    • Compares the current file with the previous commit to that file
  • Changes the behavior of the gitlens.diffWithPrevious status bar command option - compares the current line commit with the previous
  • Renames Compare File with Previous Commit command to Compare File with Previous
  • Renames Compare Line with Previous Commit command to Compare Line Commit with Previous
  • Renames Compare Line with Working Tree command to Compare Line Commit with Working Tree
  • Renames Compare with Previous Commit in quick pick menus to Compare File with Previous
  • Renames Compare with Working Tree in quick pick menus to Compare File with Working Tree

Fixed

  • Fixes #79 - Application insights package breaks GitLens + eslint

3.5.1 - 2017-05-25

Changed

  • Changes certain CodeLens actions to be unavailable (unclickable) when the commit referenced is uncommitted - avoids unwanted error messages
  • Debounces more events when tracking the active line to further reduce lag

Fixed

  • Fixes #71 - Blame information is invalid when a file has changed outside of vscode
  • Fixes issue with showing the incorrect blame for versioned files (i.e. files on the left of a diff, etc)

3.5.0 - 2017-05-24

Added

  • Improves performance
    • Reduces the number of git calls on known "untrackables"
    • Caches many more git commands to reduce git command round-trips and parsing
    • Increases the debounce (delay) on cursor movement to reduce lag when navigating around a file
  • Adds diff information (the line's previous version) into the active line hover when the current line is uncommitted
  • Adds gitlens.statusBar.alignment settings to control the alignment of the status bar — thanks to PR #72 by Zack Schuster (@zackschuster)!
  • Adds Open Branch in Remote command (gitlens.openBranchInRemote) - opens the current branch commits in the supported remote service
  • Adds Open Repository in Remote command (gitlens.openRepoInRemote) - opens the repository in the supported remote service
  • Adds Stash Changes option to stashed changes quick pick menu — no longer hidden behind the "gitlens.insiders": true setting
  • Adds Stash Unstaged Changes option to stashed changes quick pick menu — no longer hidden behind the "gitlens.insiders": true setting
  • Adds Apply Stashed Changes command (gitlens.stashApply) to apply the selected stashed changes to the working tree — no longer hidden behind the "gitlens.insiders": true setting
  • Adds Stash Changes command (gitlens.stashSave) to stash any working tree changes — no longer hidden behind the "gitlens.insiders": true setting
  • Adds support to the Search commits command (gitlens.showCommitSearch) to work without any active editor
  • Adds commit search pre-population — if there is an active editor it will use the commit sha of the current line commit, otherwise it will use the current clipboard

Changed

  • Changes Open File in Remote and Open Line Commit in Remote commands to actually work for everyone (part of their implementation was still behind the gitlens.insiders setting)
  • Changes the active line hover to only show at the beginning and end of a line if gitlens.blame.annotation.activeLine is both
  • Changes alt+f shortcut to alt+/ for the Search commits command (gitlens.showCommitSearch)
  • Changes alt+right on commit details quick pick menu to execute the Compare File with Previous Commit command (gitlens.diffWithPrevious) when a file is selected
  • Changes alt+right on repository status quick pick menu to execute the Compare File with Previous Commit command (gitlens.diffWithPrevious) when a file is selected
  • Refactors command argument passing to allow for future inclusion into the SCM menus

Fixed

  • Fixes #73 - GitLens doesn't work with Chinese filenames
  • Fixes #40 - Encoding issues
    • Given the limitations of the vscode api, I'm unable to fix all the encoding issues, but many of them should now be squashed
    • files.encoding is now honored for the cases where the encoding cannot currently be gleaned
  • Fixes incorrect file selection from the commit details quick pick menu
  • Fixes incorrect command execution when using "gitlens.statusBar.command": "gitlens.showQuickRepoHistory"
  • Fixes a bunch of issues that were revealed by enabling Typescript strict mode

3.4.9 - 2017-05-03

Added

  • Adds better support for deleted files when choosing Open Changed Files via in quick pick menus - now opens the file revision from the previous commit
  • Adds better support for deleted files when using alt+right arrow shortcut on the commit details quick pick menu - now opens the file revision from the previous commit

Changed

  • Removes deleted files when choosing Open Working Changed Files via in quick pick menus

3.4.8 - 2017-05-02

Changed

  • Changes display name in the marketplace to Git Lens because of the marketplace search ranking algorithm

3.4.6 - 2017-05-01

Added

  • Adds better support for deleted files when choosing Open File via in quick pick menus - now opens the file revision from the previous commit
  • Adds better support for deleted files when choosing Open File in Remote via in quick pick menus - now opens the file revision from the previous commit
  • Improves performance by caching the git path to avoid lookups on every git command

Changed

  • Renames gitlens.advanced.codeLens.debug setting to gitlens.codeLens.debug
  • Renames gitlens.advanced.debug setting to gitlens.debug
  • Renames gitlens.output.level setting to gitlens.outputLevel

Fixed

  • Fixes incorrect file selection when showing commit details quick pick menu
  • Fixes timing error on startup

3.4.5 - 2017-04-13

Added

  • Completely overhauls the GitLens documentation and messaging — make sure to check it out to see all the powerful features GitLens provides!
  • Adds gitlens.blame.annotation.activeLineDarkColor & gitlens.blame.annotation.activeLineLightColor settings to control the colors of the active line blame annotation

Changed

  • Changes Toggle Git CodeLens command to work when gitlens.codeLens.visibility is set to auto (the default)
  • Renames Compare with... command to Compare File with...
  • Renames Compare with Next Commit command to Compare File with Next Commit
  • Renames Compare with Previous Commit command to Compare File with Previous Commit
  • Renames Compare with Previous Commit command to Compare File with Previous Commit
  • Renames Compare with Working Tree command to Compare File with Working Tree

Fixed

  • Fixes issue with Open Commit in Remote not working
  • Fixes issue with many commands missing from the Command Palette

3.3.3 - 2017-04-10

Fixed

  • Fixes issue with newlines in commit messages in the file/branch/stash history quick pick menus (truncates and adds an ellipse icon)

3.3.2 - 2017-04-10

Removed

  • Removes gitlens.blame.annotation.characters.* settings since they were added to deal with unicode bugs in a previous version of vscode

Fixed

  • Closes #63 - Switch commit message and author in commit pick list. Also reduces clutter in the commit quick pick menus

3.3.1 - 2017-04-09

Changed

  • Changes commit search prefixes — no prefix for message search, @ for author, : for file pattern, # for commit id
  • Changes sha terminology to commit id in the UI

Fixed

  • Fixes issues with author searching

3.3.0 - 2017-04-09

Added

  • Adds Search commits command (gitlens.showCommitSearch) to allow commit searching by message, author, file pattern, or sha
  • Adds alt+f shortcut for the Search commits command (gitlens.showCommitSearch)
  • Adds Show Commit Search command to the branch history quick pick menu
  • Adds Show Stashed Changes command to the repository status quick pick menu
  • Adds a Don't Show Again option to the GitLens update notification

Changed

  • Changes Open x in Remote commands to be no longer hidden behind the gitlens.insiders setting

Fixed

  • Fixes #59 - Context menu shows gitlens commands even if folder/file is not under git

3.2.1

Fixed

  • Fixes #57 - No more blank message if diff.tool is missing

3.2.0

Added

  • Adds support for single files opened in vscode — you are no longer required to open a folder for GitLens to work

Fixed

  • Fixes #57 - Warn on directory compare when there is no diff tool configured
  • Fixes #58 - Work with git sub-modules
  • Fixes issue with Open * in Remote commands with nested repositories and non-git workspace root folder

3.1.0

Added

  • Adds Show Stashed Changes command (gitlens.showQuickStashList) to open a quick pick menu of all the stashed changes
  • Adds insiders Stash Changes option to stashed changes quick pick menu — enabled via "gitlens.insiders": true
  • Adds insiders Stash Unstaged Changes option to stashed changes quick pick menu
  • Adds insiders Apply Stashed Changes command (gitlens.stashApply) to apply the selected stashed changes to the working tree
  • Adds insiders Stash Changes command (gitlens.stashSave) to stash any working tree changes

Fixed

  • Fixes incorrect counts in upstream status

3.0.5

Added

  • Adds additional insiders support for GitLab, Bitbucket, and Visual Studio Team Services to the Open x in Remote commands and quick pick menus — enabled via "gitlens.insiders": true
  • Adds insiders line support to Open File in Remote command (gitlens.openFileInRemote)
  • Adds original file name for renamed files to the repository status and commit details quick pick menu

Fixed

  • Fixes #56 - Handle file names with spaces

3.0.4

Changed

  • Changes telemetry a bit to reduce noise

Fixed

  • Fixes common telemetry error by switching to non-strict iso dates (since they are only available in later git versions)

3.0.3

Added

  • Adds a fallback to work with Git version prior to 2.11.0 — terribly sorry for the inconvenience :(

Fixed

  • Fixes #55 - reverts Git requirement back to 2.2.0
  • Fixes issues with parsing merge commits

3.0.2

Changed

  • Changes required Git version to 2.11.0

3.0.1

Added

  • Adds basic telemetry — honors the vscode telemetry configuration setting

3.0.0

Added

  • Adds insiders support for Open in GitHub to the relevant quick pick menus — enabled via "gitlens.insiders": true
  • Adds insiders Open Line Commit in Remote command (gitlens.openCommitInRemote) to open the current commit in the remote service (currently only GitHub)
  • Adds insiders Open File in Remote command (gitlens.openFileInRemote) to open the current file in the remote service (currently only GitHub)
  • Adds an update notification for feature releases
  • Adds Show Branch History command (gitlens.showQuickBranchHistory) to show the history of the selected branch
  • Adds Show Last Opened Quick Pick command (gitlens.showLastQuickPick) to re-open the previously opened quick pick menu - helps to get back to previous context
  • Adds alt+- shortcut for the Show Last Opened Quick Pick command (gitlens.showLastQuickPick)
  • Adds upstream status information (if available) to the repository status quick pick
  • Adds file status rollup information to the repository status quick pick
  • Adds file status rollup information to the commit details quick pick menu
  • Adds Compare with... (gitlens.diffWithBranch) command to compare working file to another branch (via branch quick pick menu)
  • Adds branch quick pick menu to Directory Compare (gitlens.diffDirectory) command
  • Adds support for gitlens.showQuickFileHistory command execution via CodeLens to limit results to the CodeLens block
  • Adds current branch to branch quick pick menu placeholder
  • Adds Show Branch History command to the branch history quick pick menu when showing only limited commits (e.g. starting at a specified commit)
  • Adds Show File History command to the file history quick pick menu when showing only limited commits (e.g. starting at a specified commit)
  • Adds Don't Show Again option to the unsupported git version notification

Changed

  • Changes Show Repository History command to Show Current Branch History
  • Changes Repository History terminology to Branch History

Fixed

  • Fixes issue with gitlens.diffWithPrevious command execution via CodeLens when the CodeLens was not at the document/file level
  • Fixes issue where full shas were displayed on the file/blame history explorers
  • Fixes #30 - Diff with Working Tree fails from repo/commit quick pick list if file was renamed (and the commit was before the rename)
  • Fixes various other quick pick menu command issues when a file was renamed
  • Fixes various issues when caching is disabled
  • Fixes issues with parsing commits history
  • Fixes various issues with merge commits

2.12.2

Fixed

  • Fixes #50 - excludes container-level CodeLens from html and vue language files

2.12.1

Added

  • Adds gitlens.advanced.codeLens.debug setting to control whether to show debug information in CodeLens

Fixed

  • Fixes issue where gitlens.showQuickRepoHistory command fails to open when there is no active editor

2.12.0

Added

  • Adds progress indicator for the gitlens.showQuickFileHistory & gitlens.showQuickRepoHistory quick pick menus
  • Adds paging support to the gitlens.showQuickFileHistory & gitlens.showQuickRepoHistory quick pick menus
    • Adds Show Previous Commits command
    • Adds Show Next Commits command
  • Adds keyboard page navigation via alt+, (previous) & alt+. (next) on the gitlens.showQuickFileHistory & gitlens.showQuickRepoHistory quick pick menus
  • Adds keyboard commit navigation via alt+, (previous) & alt+. (next) on the gitlens.showQuickCommitDetails & gitlens.showQuickCommitFileDetails quick pick menus

Changed

  • Changes behavior of gitlens.showQuickFileHistory & gitlens.showFileHistory to no longer show merge commits
  • Changes gitlens.copyShaToClipboard to copy the full sha, rather than short sha
  • Changes internal tracking to use full sha (rather than short sha)

2.11.2

Added

  • Adds gitlens.diffWithNext command to open a diff with the next commit
  • Adds alt+. shortcut for the gitlens.diffWithNext command

Changed

  • Changes shift+alt+p shortcut to alt+, for the gitlens.diffWithPrevious command
  • Changes alt+p shortcut to shift+alt+, for the gitlens.diffLineWithPrevious command

Removed

  • Removes gitlens.toggleCodeLens from Command Palette when not available
  • Removes gitlens.toggleCodeLens shortcut key when not available

Fixed

  • Fixes (#45)[#45] - Keyboard Shortcut collision with Project Manager

2.11.1

Added

  • Adds blame and active line annotation support to git diff split view (right side)
  • Adds command (compare, copy sha/message, etc) support to git diff split view (right side)

Fixed

  • Fixes intermittent issues when toggling whitespace for blame annotations

2.11.0

Added

  • Adds gitlens.showQuickCommitFileDetails command to show a quick pick menu of details for a file commit
  • Adds gitlens.showQuickCommitFileDetails command to CodeLens
  • Adds gitlens.showQuickCommitFileDetails command to the status bar
  • Adds gitlens.closeUnchangedFiles command to close any editors that don't have uncommitted changes
  • Adds gitlens.openChangedFiles command to open all files that have uncommitted changes
  • Adds Directory Compare (gitlens.diffDirectory) command to open the configured git difftool to compare directory versions
  • Adds Directory Compare with Previous Commit command on the gitlens.showQuickCommitDetails quick pick menu
  • Adds Directory Compare with Working Tree command on the gitlens.showQuickCommitDetails quick pick menu
  • Adds a Changed Files grouping on the gitlens.showQuickCommitDetails quick pick menu
  • Adds a Close Unchanged Files command on the gitlens.showQuickRepoStatus quick pick menu
  • Adds a contextual description to the go back command in quick pick menus

Changed

  • Changes layout of the gitlens.showQuickRepoStatus quick pick menu for better clarity
  • Changes behavior of gitlens.showQuickCommitDetails to show commit a quick pick menu of details for a commit
  • Changes default of gitlens.codeLens.recentChange.command to be gitlens.showQuickCommitFileDetails (though there is no visible behavior change)
  • Renames Open Files to Open Changed Files on the gitlens.showQuickCommitDetails quick pick menu
  • Renames Open Working Files to Open Changed Working Files on the gitlens.showQuickCommitDetails quick pick menu
  • Renames Show Changed Files to Show Commit Details on the gitlens.showQuickCommitFileDetails quick pick menu
  • Renames Open Files to Open Changed Files on the gitlens.showQuickRepoStatus quick pick menu

Fixed

  • Fixes #44 by adding a warning message about Git version requirements
  • Fixes intermittent errors when adding active line annotations
  • Fixes intermittent errors when opening multiple files via quick pick menus

2.10.1

Fixed

  • Fixes #43 - File-level CodeLens isn't using the blame of the whole file as it should
  • Fixes issue with single quotes (') in annotations
  • Fixes output channel logging (also adds more debug information to CodeLens — when enabled)

2.10.0

Added

  • Adds blame and active line annotation support to git diff split view
  • Adds command (compare, copy sha/message, etc) support to git diff split view

Fixed

  • Fixes startup failure if caching was disabled
  • Fixes missing Compare Line with Previous Commit context menu item
  • Fixes #41 - Toggle Blame annotations on compare files page
  • Fixes issue with undo (to a saved state) not causing annotations to reappear properly
  • Attempts to fix #42 - Cursor on Uncommitted message

2.9.0

Changed

  • To accommodate the realization that blame information is invalid when a file has unsaved changes, the following behavior changes have been made
    • Status bar blame information will hide
    • CodeLens change to a Cannot determine... message and become unclickable
    • Many menu choices and commands will hide

Fixed

  • Fixes #38 - Toggle Blame Annotation button shows even when it isn't valid
  • Fixes #36 - Blame information is invalid when a file has unsaved changes

2.8.2

Added

  • Adds gitlens.blame.annotation.dateFormat to specify how absolute commit dates will be shown in the blame annotations
  • Adds gitlens.statusBar.date to specify whether and how the commit date will be shown in the blame status bar
  • Adds gitlens.statusBar.dateFormat to specify how absolute commit dates will be shown in the blame status bar

Fixed

  • Fixes #39 - Add date format options for status bar blame

2.8.1

Fixed

  • Fixes issue where Compare with * commands fail to open when there is no active editor

2.8.0

Added

  • Adds new Open File command on the gitlens.showQuickCommitDetails quick pick menu to open the commit version of the file
  • Adds new Open File command on the gitlens.showQuickCommitDetails quick pick menu to open the commit version of the files
  • Adds alt+left keyboard shortcut in quick pick menus to go back
  • Adds alt+right keyboard shortcut in quick pick menus to execute the currently selected item while keeping the quick pick menu open (in most cases)
    • alt+right keyboard shortcut on commit details file name, will open the commit version of the file

Changed

  • Indents the file statuses on the gitlens.showQuickCommitDetails quick pick menu
  • Renames Open File to Open Working File on the gitlens.showQuickCommitDetails quick pick menu
  • Renames Open File and Open Working Files on the gitlens.showQuickCommitDetails quick pick menu
  • Reorders some quick pick menus

Fixed

  • Fixes #34 - Open file should open the selected version of the file
  • Fixes some issue where some editors opened by the quick pick would not be opened in preview tabs
  • Fixes issue where copy to clipboard commands would fail if there was no active editor
  • Fixes issue where active line annotations would show for opened versioned files
  • Fixes issue where CodeLens compare commands on opened versioned files would fail

2.7.1

Added

  • Adds proper support for multi-line commit messages

Fixed

  • Fixes #33 - Commit message styled as title in popup, when message starts with hash symbol

2.7.0

Added

  • Adds file status icons (added, modified, deleted, etc) to the gitlens.showQuickCommitDetails quick pick menu
  • Adds Copy Commit Sha to Clipboard command to commit files quick pick menu
  • Adds Copy Commit Message to Clipboard command to commit files quick pick menu

Changed

  • Changes Show Commit History to Show File History on the gitlens.showQuickCommitDetails quick pick menu
  • Changes Show Previous Commit History to Show Previous File History on the gitlens.showQuickCommitDetails quick pick menu

Fixed

  • Fixes issue with repository status when there are no changes
  • Fixes issue with . showing in the path of quick pick menus
  • Fixes logging to clean up on extension deactivate

2.6.0

Added

  • Adds gitlens.showQuickRepoStatus command to show a quick pick menu of files changed including status icons (added, modified, deleted, etc)
  • Adds alt+s shortcut for the gitlens.showQuickRepoStatus command

2.5.6

Fixed

  • Fixes #32 - 00000000 Uncommitted changes distracting

2.5.5

Fixed

  • Fixes #25 - Blame information isn't updated after git operations (commit, reset, etc)

2.5.4

Fixed

  • Fixes extra spacing in annotations

2.5.3

Fixed

  • Fixes #27 - Annotations are broken in vscode insider build

2.5.2

Added

  • Adds Open File command to gitlens.showQuickCommitDetails quick pick menu
  • Adds Open Files command to gitlens.showQuickCommitDetails quick pick menu
  • Improves performance of git-log operations in gitlens.diffWithPrevious and gitlens.diffWithWorking commands

Changed

  • Changes Not Committed Yet author for uncommitted changes to Uncommitted

Fixed

  • Fixes showing gitlens.showQuickCommitDetails quick pick menu for uncommitted changes — now shows the previous commit details

2.5.1

Added

  • Adds gitlens.copyMessageToClipboard command to copy commit message to the clipboard
  • Adds gitlens.copyMessageToClipboard to the editor content menu
  • Adds Copy Commit Message to Clipboard command to gitlens.showQuickCommitDetails quick pick menu

Changed

  • Changes behavior of gitlens.copyShaToClipboard to copy the sha of the most recent commit to the repository if there is no active editor
  • Changes behavior of gitlens.showQuickFileHistory to execute gitlens.showQuickRepoHistory if there is no active editor

Fixed

  • Fixes issue where shortcut keys weren't disabled if GitLens was disabled

2.5.0

Added

  • Overhauls the gitlens.showQuickRepoHistory, gitlens.showQuickFileHistory, and gitlens.showQuickCommitDetails quick pick menus
    • Adds Show Repository History command to gitlens.showQuickFileHistory quick pick menu
    • Adds Show Previous Commits History command to gitlens.showQuickCommitDetails quick pick menu
    • Adds Show Commits History command to gitlens.showQuickCommitDetails quick pick menu
    • Adds Copy Commit Sha to Clipboard command to gitlens.showQuickCommitDetails quick pick menu
    • Adds Show Changed Files command to gitlens.showQuickCommitDetails quick pick menu
    • Adds more robust go back navigation in quick pick menus
    • Adds commit message to placeholder text of many quick pick menus
    • Adds icons for some commands
  • Adds gitlens.diffWithPrevious command to the editor content menu
  • Adds gitlens.diffWithWorking command to the editor content menu
  • Adds gitlens.showQuickRepoHistory and gitlens.showQuickCommitDetails commands to CodeLens
  • Adds gitlens.showQuickRepoHistory and gitlens.showQuickCommitDetails commands to the status bar

Changed

  • Changes the default command of gitlens.codeLens.recentChange.command to gitlens.showQuickCommitDetails
  • Changes the default command of gitlens.statusBar.command to gitlens.showQuickCommitDetails
  • Changes behavior of gitlens.showQuickCommitDetails to show commit commands rather than file set (use Show Changed Files command to get to the file set)
  • Changes gitlens.diffWithPrevious command to behave as gitlens.diffWithWorking if the file has uncommitted changes
  • Renames gitlens.diffWithPrevious command from Diff Commit with Previous to Compare with Previous Commit
  • Renames gitlens.diffLineWithPrevious command from Diff Commit (line) with Previous to Compare Line with Previous Commit
  • Renames gitlens.diffWithWorking command from Diff Commit with Working Tree to Compare with Working Tree
  • Renames gitlens.diffLineWithWorking command from Diff Commit (line) with Working Tree to Compare Line with Working Tree

Fixed

  • Fixes issues with certain git commands not working on Windows
  • Fixes #31 - Disable gitlens if the project does not have .git folder
  • Fixes issue where quick pick menus could fail if there was no active editor
  • Fixes CodeLens not updating in response to configuration changes

2.1.1

Fixed

  • Fixes overzealous active line annotation updating on document changes

2.1.0

Added

  • Adds a new GitLens logo and changes all images to svg
  • Adds alt+p shortcut for the gitlens.diffLineWithPrevious command
  • Adds shift+alt+p shortcut for the gitlens.diffWithPrevious command
  • Adds alt+w shortcut for the gitlens.diffLineWithWorking command
  • Adds shift+alt+w shortcut for the gitlens.diffWithWorking command
  • Adds gitlens.copyShaToClipboard command to copy commit sha to the clipboard (#28)
  • Adds gitlens.showQuickCommitDetails command to show a quick pick menu of details for a commit
  • Adds go back choice to gitlens.showQuickCommitDetails, gitlens.showQuickFileHistory, and gitlens.showQuickRepoHistory quick pick menus
  • Adds gitlens.blame.annotation.highlight to specify whether and how to highlight blame annotations (#24)
  • Greatly improves performance of line navigation when either active line annotations or status bar blame is enabled

Fixed

  • Fixes #29 - Commit info tooltip duplicated for current line when blame is enabled
  • Fixes issue where sometimes the commit history shown wasn't complete
  • Fixes issues with gitlens.diffLineWithPrevious and gitlens.diffWithPrevious not following renames properly
  • Fixes issues with gitlens.diffLineWithPrevious and gitlens.diffWithPrevious not always grabbing the correct commit

2.0.2

Added

  • Adds auto-enable of whitespace toggling when using font-ligatures because of vscode issue
  • Adds gitlens.blame.annotation.characters.* settings to provide some control over how annotations are displayed

Fixed

  • Fixes #22 - Cannot read property 'sha' of undefined

2.0.1

Fixed

  • Fixes #26 - Active line annotation doesn't disappear properly after delete

2.0.0

Added

  • Adds gitlens.blame.annotation.activeLine to specify whether and how to show blame annotations on the active line
  • Adds full commit message (rather than just summary) to active line hover if gitlens.blame.annotation.activeLine is not off
  • Adds new trailing blame annotation style — adds annotations after the code lines rather than before
  • Adds gitlens.blame.annotation.message to show the commit message in expanded and trailing blame annotation styles
  • Adds support for relative dates in blame annotations. Use gitlens.blame.annotation.date
  • Re-adds context menu for gitlens.diffLineWithPrevious — since vscode issue
  • Re-adds context menu for gitlens.diffLineWithWorking — since vscode issue

Changed

  • Changes the design of hover annotations — much cleaner now
  • Disables automatic whitespace toggling by default as it is seemingly no longer needed as vscode issue seems fixed. It can be re-enabled with gitlens.advanced.toggleWhitespace.enabled

Fixed

  • Fixes issue where the status bar blame would get stuck switching between editors
  • Fixes issue where CodeLens aren't updated properly after a file is saved

1.4.3

Added

  • Adds some logging to hopefully trap #22 - Cannot read property 'sha' of undefined

Fixed

  • Fixes issue with the latest insiders build (1.9.0-insider f67f87c5498d9361c0b29781c341fd032815314b) where there is a collision of document schemes

1.4.2

Fixed

  • Fixes issue where file history wouldn't compare correctly to working tree if the filename had changed

1.4.1

Added

  • Adds gitlens.advanced.gitignore.enabled to enable/disable .gitignore parsing. Addresses #20 - Nested .gitignore files can cause blame to fail with a repo within another repo

1.4.0

Added

  • Adds alt+h shortcut for the gitlens.showQuickFileHistory command
  • Adds shift+alt+h shortcut for the gitlens.showQuickRepoHistory command
  • Adds gitlens.advanced.maxQuickHistory to limit the number of quick history entries to show (for better performance); Defaults to 200
  • Adds gitlens.diffLineWithPrevious as alt context menu item for gitlens.diffWithPrevious
  • Adds gitlens.diffLineWithWorking as alt context menu item for gitlens.diffWithWorking
  • Adds gitlens.showFileHistory as alt context menu item for gitlens.showQuickFileHistory

Removed

  • Removes context menu for gitlens.diffLineWithPrevious — since it is now the alt of gitlens.diffWithPrevious
  • Removes context menu for gitlens.diffLineWithWorking — since it is now the alt of gitlens.diffWithWorking
  • Replaces gitlens.menus.fileDiff.enabled and gitlens.menus.lineDiff.enabled with gitlens.menus.diff.enabled — since the switch between file and line diff is now controlled by the alt key

1.3.1

Added

  • Adds Diff Commit with Working Tree to the explorer context menu (assuming gitlens.menus.fileDiff.enabled is true)
  • Adds Diff Commit with Working Tree & Diff Commit with Previous to the editor title context menu (assuming gitlens.menus.fileDiff.enabled is true)

Changed

  • Renames Diff commands for better clarity
  • Removes Git from the commands as it feels unnecessary
  • Reorders the context menu commands

1.3.0

Added

  • Adds support for blame and history (log) on files opened via compare commands — allows for deep navigation through git history

1.2.0

Added

  • Adds compare (working vs previous) options to repository history
  • Adds compare (working vs previous) options to file history

Fixed

  • Fixes issue with repository history compare with commits with multiple files

1.1.1

Added

  • Adds logging for tracking #18 - GitLens only displayed for some files

Changed

  • Changes gitlens.showQuickRepoHistory command to run without an open editor (falls back to the folder repository)

1.1.0

Added

  • Adds new gitlens.showQuickFileHistory command to show the file history in a quick-pick list (palette)
  • Adds new gitlens.showQuickRepoHistory command to show the repository history in a quick-pick list (palette)
  • Adds gitlens.showQuickFileHistory option to the gitlens.codeLens.recentChange.command, gitlens.codeLens.authors.command, and gitlens.statusBar.command settings

Changed

  • Changes the gitlens.statusBar.command settings default to gitlens.showQuickFileHistory instead of gitlens.toggleBlame

Removed

  • Removes git.viewFileHistory option from the gitlens.codeLens.recentChange.command, gitlens.codeLens.authors.command, and gitlens.statusBar.command settings

1.0.2

Fixed

  • Fixes #16 - incorrect 'Unable to find Git' message

1.0.0

Added

  • Adds support for git history (log)!
  • Adds support for blame annotations and git commands on file revisions
  • Adds ability to show multiple blame annotation at the same time (one per vscode editor)
  • Adds new gitlens.showFileHistory command to open the history explorer
  • Adds new gitlens.showFileHistory option to the gitlens.codeLens.recentChange.command, gitlens.codeLens.authors.command, and gitlens.statusBar.command settings
  • Adds per-language CodeLens location customization using the gitlens.codeLens.languageLocations setting
  • Adds new gitlens.diffLineWithPrevious command for line sensitive diffs
  • Adds new gitlens.diffLineWithWorking command for line sensitive diffs
  • Adds gitlens.diffWithPrevious command to the explorer context menu
  • Adds output channel logging, controlled by the gitlens.advanced.output.level setting
  • Improves performance of the CodeLens support
  • Improves performance (significantly) when only showing CodeLens at the document level
  • Improves performance of status bar blame support

Changed

  • Switches on-demand CodeLens to be a global toggle (rather than per file)
  • Complete rewrite of the blame annotation provider to reduce overhead and provide better performance
  • Changes gitlens.diffWithPrevious command to always be file sensitive diffs
  • Changes gitlens.diffWithWorking command to always be file sensitive diffs
  • Removes all debug logging, unless the gitlens.advanced.debug settings it on

Fixed

  • Fixes many (most?) issues with whitespace toggling (required because of microsoft/vscode#11485)
  • Fixes issue where blame annotations would not be cleared properly when switching between open files

0.5.5

Fixed

  • Fixes another off-by-one issue when diffing with caching

0.5.4

Fixed

  • Fixes off-by-one issues with blame annotations without caching and when diffing with a previous version

0.5.3

Added

  • Adds better uncommitted hover message in blame annotations
  • Adds more protection for dealing with uncommitted lines

0.5.2

Fixed

  • Fixes loading issue on Linux

0.5.1

Added

  • Adds blame information in the status bar
  • Add new status bar settings — see Extension Settings for details
  • Adds new gitlens.diffWithPrevious option to the gitlens.codeLens.recentChange.command & gitlens.codeLens.authors.command settings

Changed

  • Renames the gitlens.codeLens.recentChange.command & gitlens.codeLens.authors.command settings options (to align with command names)

Removed

  • Removes gitlens.blame.annotation.useCodeActions setting and behavior

Fixed

  • Fixes Diff with Previous when the selection is uncommitted

0.3.3

Fixed

  • Fixes #7 - missing spawn-rx dependency (argh!)

0.3.2

Fixed

  • Fixes #7 - missing lodash dependency

0.3.1

Added

  • Adds new CodeLens visibility & location settings — see Extension Settings for details
  • Adds new command to toggle CodeLens on and off when gitlens.codeLens.visibility is set to ondemand

0.2.0

Changed

  • Replaces blame regex parsing with a more robust parser

Fixed

  • Fixes #1 - Support blame on files outside the workspace repository
  • Fixes failures with Diff with Previous command
  • Fixes issues with blame explorer CodeLens when dealing with previous commits
  • Fixes display issues with compact blame annotations (now skips blank lines)

0.1.3

Added

  • Improved blame annotations, now with sha and author by default
  • Add new blame annotation styles — compact and expanded (default)
  • Adds many new configuration settings; see Extension Settings for details

0.0.7

Added

  • Adds .gitignore checks to reduce the number of blame calls

Fixed

  • Fixes #4 - Absolute paths fail on Windows due to backslash (Really!)
  • Fixes #5 - Finding first non-white-space fails sometimes

0.0.6

Added

  • Adds attempt to scroll to the correct position when opening a diff

Fixed

  • Fixes #2 - [request] Provide some debug info when things fail
  • Fixes #4 - Absolute paths fail on Windows due to backslash

0.0.5

Changed

  • Removes CodeLens from fields and single-line properties to reduce visual noise
  • Automatically turns off blame only when required now

Fixed

  • Fixes issues where filename changes in history would cause diffs to fails
  • Fixes some issues with uncommitted blames

0.0.4

Added

  • Candidate for preview release on the vscode marketplace.

0.0.1

Added

  • Initial release but still heavily a work in progress.