October 11-13, 2022

GitKon 2022

GitLens Documentation

Settings

GitLens provides a rich interactive settings editor, an easy-to-use interface, to configure many of GitLens’ powerful features. It can be accessed via the GitLens: Open Settings (gitlens.showSettingsPage) command from the Command Palette.

GitLens is highly customizable and provides many configuration settings to allow the personalization of almost all features.

Current Line Blame Settings

Name Description
gitlens.currentLine.dateFormat Specifies how to format absolute dates (e.g. using the ${date} token) for the current line blame annotations. See the Moment.js docs for valid formats
gitlens.currentLine.enabled Specifies whether to provide a blame annotation for the current line, by default. Use the Toggle Line Blame Annotations command (gitlens.toggleLineBlame) to toggle the annotations on and off for the current window
gitlens.currentLine.format Specifies the format of the current line blame annotation. See Commit Tokens in the GitLens docs. Date formatting is controlled by the gitlens.currentLine.dateFormat setting
gitlens.currentLine.pullRequests.enabled Specifies whether to provide information about the Pull Request (if any) that introduced the commit in the current line blame annotation. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.currentLine.scrollable Specifies whether the current line blame annotation can be scrolled into view when it is outside the viewport. NOTE: Setting this to false will inhibit the hovers from showing over the annotation; Set gitlens.hovers.currentLine.over to line to enable the hovers to show anywhere over the line.

Git CodeLens Settings

Name Description
gitlens.codeLens.authors.command Specifies the command to be executed when an authors CodeLens is clicked, set to (gitlens.toggleFileBlame) by default. Can be set to false to disable click actions on the CodeLens.

gitlens.toggleFileBlame – toggles file blame annotations
gitlens.toggleFileHeatmap – toggles file heatmap
gitlens.toggleFileChanges – toggles file changes since before the commit
gitlens.toggleFileChangesOnly – toggles file changes from the commit
gitlens.diffWithPrevious – opens changes with the previous revision
gitlens.revealCommitInView – reveals the commit in the Side Bar
gitlens.showCommitsInView – searches for commits within the range
gitlens.showQuickCommitDetails – shows details of the commit
gitlens.showQuickCommitFileDetails – show file details of the commit
gitlens.showQuickFileHistory – shows the current file history
gitlens.showQuickRepoHistory – shows the current branch history
gitlens.openCommitOnRemote – opens the commit on the remote service (when available)
gitlens.copyRemoteCommitUrl – copies the remote commit url to the clipboard (when available)
gitlens.openFileOnRemote – opens the file revision on the remote service (when available)
gitlens.copyRemoteFileUrl – copies the remote file url to the clipboard (when available)

gitlens.codeLens.authors.enabled Specifies whether to provide an authors CodeLens, showing number of authors of the file or code block and the most prominent author (if there is more than one)
gitlens.codeLens.enabled Specifies whether to provide any Git CodeLens, by default. Use the Toggle Git CodeLens command (gitlens.toggleCodeLens) to toggle the Git CodeLens on and off for the current window
gitlens.codeLens.includeSingleLineSymbols Specifies whether to provide any Git CodeLens on symbols that span only a single line
gitlens.codeLens.recentChange.command Specifies the command to be executed when a recent change CodeLens is clicked, set to (gitlens.showQuickCommitFileDetails) by default. Can be set to false to disable click actions on the CodeLens.

gitlens.toggleFileBlame – toggles file blame annotations
gitlens.toggleFileHeatmap – toggles file heatmap
gitlens.toggleFileChanges – toggles file changes since before the commit
gitlens.toggleFileChangesOnly – toggles file changes from the commit
gitlens.diffWithPrevious – opens changes with the previous revision
gitlens.revealCommitInView – reveals the commit in the Side Bar
gitlens.showCommitsInView – searches for commits within the range
gitlens.showQuickCommitDetails – shows details of the commit
gitlens.showQuickCommitFileDetails – show file details of the commit
gitlens.showQuickFileHistory – shows the current file history
gitlens.showQuickRepoHistory – shows the current branch history
gitlens.openCommitOnRemote – opens the commit on the remote service (when available)
gitlens.copyRemoteCommitUrl – copies the remote commit url to the clipboard (when available)
gitlens.openFileOnRemote – opens the file revision on the remote service (when available)
gitlens.copyRemoteFileUrl – copies the remote file url to the clipboard (when available)

gitlens.codeLens.recentChange.enabled Specifies whether to provide a recent change CodeLens, showing the author and date of the most recent commit for the file or code block
gitlens.codeLens.scopes Specifies where Git CodeLens will be shown in the document

document – adds CodeLens at the top of the document
containers – adds CodeLens at the start of container-like symbols (modules, classes, interfaces, etc)
blocks – adds CodeLens at the start of block-like symbols (functions, methods, etc) lines

gitlens.codeLens.symbolScopes Specifies a set of document symbols where Git CodeLens will or will not be shown in the document. Prefix with ! to avoid providing a Git CodeLens for the symbol. Must be a member of SymbolKind

Status Bar Settings

Name Description
gitlens.statusBar.alignment Specifies the blame alignment in the status bar

left – aligns to the left
right – aligns to the right

gitlens.statusBar.command Specifies the command to be executed when the blame status bar item is clicked

gitlens.toggleFileBlame – toggles file blame annotations
gitlens.toggleFileHeatmap – toggles file heatmap
gitlens.toggleFileChanges – toggles file changes since before the commit
gitlens.toggleFileChangesOnly – toggles file changes from the commit
gitlens.diffWithPrevious – opens changes with the previous revision
gitlens.revealCommitInView – reveals the commit in the Side Bar
gitlens.showCommitsInView – searches for commits within the range
gitlens.showQuickCommitDetails – shows details of the commit
gitlens.showQuickCommitFileDetails – show file details of the commit
gitlens.showQuickFileHistory – shows the current file history
gitlens.showQuickRepoHistory – shows the current branch history
gitlens.openCommitOnRemote – opens the commit on the remote service (when available)
gitlens.copyRemoteCommitUrl – copies the remote commit url to the clipboard (when available)
gitlens.openFileOnRemote – opens the file revision on the remote service (when available)
gitlens.copyRemoteFileUrl – copies the remote file url to the clipboard (when available)

gitlens.statusBar.dateFormat Specifies how to format absolute dates (e.g. using the ${date} token) in the blame information in the status bar. See the Moment.js docs for valid formats
gitlens.statusBar.enabled Specifies whether to provide blame information in the status bar
gitlens.statusBar.format Specifies the format of the blame information in the status bar. See Commit Tokens in the GitLens docs. Date formatting is controlled by the gitlens.statusBar.dateFormat setting
gitlens.statusBar.pullRequests.enabled Specifies whether to provide information about the Pull Request (if any) that introduced the commit in the status bar. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.statusBar.reduceFlicker Specifies whether to avoid clearing the previous blame information when changing lines to reduce status bar “flashing”
gitlens.statusBar.tooltipFormat Specifies the format (in markdown) of hover shown over the blame information in the status bar. See Commit Tokens in the GitLens docs

Hover Settings

Name Description
gitlens.hovers.annotations.changes Specifies whether to provide a changes (diff) hover for all lines when showing blame annotations
gitlens.hovers.annotations.details Specifies whether to provide a commit details hover for all lines when showing blame annotations
gitlens.hovers.annotations.enabled Specifies whether to provide any hovers when showing blame annotations
gitlens.hovers.annotations.over Specifies when to trigger hovers when showing blame annotations

annotation – only shown when hovering over the line annotation
line – shown when hovering anywhere over the line

gitlens.hovers.avatars Specifies whether to show avatar images in hovers
gitlens.hovers.avatarSize Specifies the size of the avatar images in hovers
gitlens.hovers.changesDiff Specifies whether to show just the changes to the line or the set of related changes in the changes (diff) hover

line – Shows only the changes to the line
hunk – Shows the set of related changes

gitlens.hovers.currentLine.changes Specifies whether to provide a changes (diff) hover for the current line
gitlens.hovers.currentLine.details Specifies whether to provide a commit details hover for the current line
gitlens.hovers.currentLine.enabled Specifies whether to provide any hovers for the current line
gitlens.hovers.currentLine.over Specifies when to trigger hovers for the current line

annotation – only shown when hovering over the line annotation
line – shown when hovering anywhere over the line

gitlens.hovers.detailsMarkdownFormat Specifies the format (in markdown) of the commit details hover. See Commit Tokens in the GitLens docs
gitlens.hovers.enabled Specifies whether to provide any hovers
gitlens.hovers.autolinks.enabled Specifies whether to automatically link external resources in commit messages
gitlens.hovers.autolinks.enhanced Specifies whether to lookup additional details about automatically link external resources in commit messages. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.hovers.pullRequests.enabled Specifies whether to provide information about the Pull Request (if any) that introduced the commit in the hovers. Requires a connection to a supported remote service (e.g. GitHub)

View Settings

Name Description
gitlens.views.defaultItemLimit Specifies the default number of items to show in a view list. Use 0 to specify no limit
gitlens.views.formats.commits.label Specifies the format of commits in the views. See Commit Tokens in the GitLens docs
gitlens.views.formats.commits.description Specifies the description format of commits in the views. See Commit Tokens in the GitLens docs
gitlens.views.formats.files.label Specifies the format of a file in the views. See File Tokens in the GitLens docs
gitlens.views.formats.files.description Specifies the description format of a file in the views. See File Tokens in the GitLens docs
gitlens.views.formats.stashes.label Specifies the format of stashes in the views. See Commit Tokens in the GitLens docs
gitlens.views.formats.stashes.description Specifies the description format of stashes in the views. See Commit Tokens in the GitLens docs
gitlens.views.pageItemLimit Specifies the number of items to show in a each page when paginating a view list. Use 0 to specify no limit
gitlens.views.showRelativeDateMarkers Specifies 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

Commits View Settings

See also View Settings

Name Description
gitlens.views.commits.avatars Specifies whether to show avatar images instead of commit (or status) icons in the Commits view
gitlens.views.commits.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Commits view.
Only applies when gitlens.views.commits.files.layout is set to tree or auto
gitlens.views.commits.files.layout Specifies how the Commits view will display files

auto – automatically switches between displaying files as a tree or list based on the gitlens.views.commits.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

gitlens.views.commits.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Commits view
Only applies when gitlens.views.commits.files.layout is set to auto
gitlens.views.commits.pullRequests.enabled Specifies whether to query for pull requests associated with the current branch and commits in the Commits view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.commits.pullRequests.showForBranches Specifies whether to query for pull requests associated with the current branch and commits in the Commits view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.commits.pullRequests.showForCommits Specifies whether to show pull requests (if any) associated with the current branch in the Commits view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.commits.reveal Specifies whether to reveal commits in the Commits view, otherwise they will be revealed in the Repositories view
gitlens.views.commits.showBranchComparison Specifies whether to show a comparison of the current branch or the working tree with a user-selected reference (branch, tag. etc) in the Commits view

false – hides the branch comparison
branch – compares the current branch with a user-selected reference
working – compares the working tree with a user-selected reference


Repositories View Settings

See also View Settings

Name Description
gitlens.views.repositories.avatars Specifies whether to show avatar images instead of commit (or status) icons in the Repositories view
gitlens.views.repositories.autoRefresh Specifies whether to automatically refresh the Repositories view when the repository or the file system changes
gitlens.views.repositories.autoReveal Specifies whether to automatically reveal repositories in the Repositories view when opening files
gitlens.views.repositories.branches.layout Specifies how the Repositories view will display branches

list – displays branches as a list
tree – displays branches as a tree when branch names contain slashes /

gitlens.views.repositories.branches.showBranchComparison Specifies whether to show a comparison of the branch with a user-selected reference (branch, tag. etc) under each branch in the Repositories view view
gitlens.views.repositories.compact Specifies whether to show the Repositories view in a compact display density
gitlens.views.repositories.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Repositories view. Only applies when gitlens.views.repositories.files.layout is set to tree or auto
gitlens.views.repositories.files.layout Specifies how the Repositories view will display files

auto – automatically switches between displaying files as a tree or list based on the gitlens.views.repositories.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

gitlens.views.repositories.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Repositories view. Only applies when gitlens.views.repositories.files.layout is set to auto
gitlens.views.repositories.includeWorkingTree Specifies whether to include working tree file status for each repository in the Repositories view
gitlens.views.repositories.showBranchComparison Specifies whether to show a comparison of a user-selected reference (branch, tag. etc) to the current branch or the working tree in the Repositories view
gitlens.views.repositories.showBranches Specifies whether to show the branches for each repository in the Repositories view
itlens.views.repositories.showCommits Specifies whether to show the commits on the current branch for each repository in the Repositories view
gitlens.views.repositories.showContributors Specifies whether to show the contributors for each repository in the Repositories view
gitlens.views.repositories.showIncomingActivity Specifies whether to show the experimental incoming activity for each repository in the Repositories view
gitlens.views.repositories.showRemotes Specifies whether to show the remotes for each repository in the Repositories view
gitlens.views.repositories.showStashes Specifies whether to show the stashes for each repository in the Repositories view
gitlens.views.repositories.showTags Specifies whether to show the tags for each repository in the Repositories view
gitlens.views.repositories.showUpstreamStatus Specifies whether to show the upstream status of the current branch for each repository in the Repositories view

File History View Settings

See also View Settings

Name Description
gitlens.views.fileHistory.avatars Specifies whether to show avatar images instead of status icons in the File History view

Line History View Settings

See also View Settings

Name Description
gitlens.views.lineHistory.avatars Specifies whether to show avatar images instead of status icons in the Line History view

Branch View Settings

See also View Settings

Name Description
gitlens.views.branches.avatars Specifies whether to show avatar images instead of commit (or status) icons in the Branches view
gitlens.views.branches.branches.layout Specifies how the Branches view will display branches

list – displays branches as a list
tree – displays branches as a tree

gitlens.views.branches.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Branches view.
Only applies when gitlens.views.commits.files.layout is set to tree or auto
gitlens.views.branches.files.layout Specifies how the Branches view will display files

auto – automatically switches between displaying files as a tree or list based on the gitlens.views.commits.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

gitlens.views.branches.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Branches view
Only applies when gitlens.views.commits.files.layout is set to auto
gitlens.views.branches.pullRequests.enabled Specifies whether to query for pull requests associated with the current branch and commits in the Branches view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.branches.pullRequests.showForBranches Specifies whether to query for pull requests associated with the current branch and commits in the Branches view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.branches.pullRequests.showForCommits Specifies whether to show pull requests (if any) associated with the current branch in the Branches view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.branches.reveal Specifies whether to reveal branches in the Branches view, otherwise they will be revealed in the Repositories view
gitlens.views.branches.showBranchComparison Specifies whether to show a comparison of the branch with a user-selected reference (branch, tag. etc) in the Branches view

false – hides the branch comparison
branch – compares the current branch with a user-selected reference


Remotes View Settings

See also View Settings

Name Description
gitlens.views.remotes.avatars Specifies whether to show avatar images instead of commit (or status) icons in the Remotes view
gitlens.views.remotes.branches.layout Specifies how the Remotes view will display branches

list – displays branches as a list
tree – displays branches as a tree

gitlens.views.remotes.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Remotes view.
Only applies when gitlens.views.commits.files.layout is set to tree or auto
gitlens.views.remotes.files.layout Specifies how the Remotes view will display files

auto – automatically switches between displaying files as a tree or list based on the gitlens.views.commits.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

gitlens.views.remotes.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Remotes view
Only applies when gitlens.views.commits.files.layout is set to auto
gitlens.views.remotes.pullRequests.enabled Specifies whether to query for pull requests associated with the current branch and commits in the Remotes view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.remotes.pullRequests.showForBranches Specifies whether to query for pull requests associated with the current branch and commits in the Remotes view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.remotes.pullRequests.showForCommits Specifies whether to show pull requests (if any) associated with the current branch in the Remotes view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.remotes.reveal Specifies whether to reveal remotes in the Remotes view, otherwise they will be revealed in the Repositories view
gitlens.views.remotes.showBranchComparison Specifies whether to show a comparison of the branch with a user-selected reference (branch, tag. etc) in the Remotes view

false – hides the branch comparison
branch – compares the current branch with a user-selected reference


Stashes View Settings

See also View Settings

Name Description
gitlens.views.stashes.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Stashes view.
Only applies when gitlens.views.commits.files.layout is set to tree or auto
gitlens.views.stashes.files.layout Specifies how the Stashes view will display files

auto – automatically switches between displaying files as a tree or list based on the gitlens.views.commits.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

gitlens.views.stashes.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Stashes view
Only applies when gitlens.views.commits.files.layout is set to auto
gitlens.views.stashes.reveal Specifies whether to reveal stashes in the Stashes view, otherwise they will be revealed in the Repositories view

Tags View Settings

See also View Settings

Name Description
gitlens.views.tags.avatars Specifies whether to show avatar images instead of commit (or status) icons in the Tags view
gitlens.views.tags.branches.layout Specifies how the Tags view will display tags

list – displays tags as a list
tree – displays tags as a tree

gitlens.views.tags.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Tags view.
Only applies when gitlens.views.commits.files.layout is set to tree or auto
gitlens.views.tags.files.layout Specifies how the Tags view will display files

auto – automatically switches between displaying files as a tree or list based on the gitlens.views.commits.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

gitlens.views.tags.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Tags view
Only applies when gitlens.views.commits.files.layout is set to auto
gitlens.views.tags.reveal Specifies whether to reveal tags in the Tags view, otherwise they will be revealed in the Repositories view

Worktrees View Settings

See also View Settings

Name Description
gitlens.views.worktrees.avatars Specifies whether to show avatar images instead of commit (or status) icons in the _Worktrees_ view
gitlens.views.worktrees.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the _Worktrees_ view.
Only applies when gitlens.views.commits.files.layout is set to tree or auto
gitlens.views.worktrees.files.layout Specifies how the _Worktrees_ view will display files

`auto` – automatically switches between displaying files as a tree or list based on the gitlens.views.commits.files.threshold value and the number of files at each nesting level
`list` – displays files as a list
`tree` – displays files as a tree

gitlens.views.worktrees.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the _Worktrees_ view
Only applies when gitlens.views.commits.files.layout is set to auto
gitlens.views.worktrees.pullRequests.enabled Specifies whether to query for pull requests associated with the worktree branch and commits in the _Worktrees_ view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.worktrees.pullRequests.showForBranches Specifies whether to query for pull requests associated with the worktree branch in the _Worktrees_ view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.worktrees.pullRequests.showForCommits Specifies whether to show pull requests (if any) associated with commits in the _Worktrees_ view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.worktrees.reveal Specifies whether to reveal worktrees in the _Worktrees_ view, otherwise they will be revealed in the _Repositories_ view
gitlens.views.worktrees.showBranchComparison Specifies whether to show a comparison of the worktree branch with a user-selected reference (branch, tag. etc) in the _Worktrees_ view

false – hides the branch comparison
branch – compares the current branch with a user-selected reference


Contributors View Settings

See also View Settings

Name Description
gitlens.views.contributors.avatars Specifies whether to show avatar images instead of commit (or status) icons in the Contributors view
gitlens.views.contributors.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Contributors view.
Only applies when gitlens.views.commits.files.layout is set to tree or auto
gitlens.views.contributors.files.layout Specifies how the Contributors view will display files

auto – automatically switches between displaying files as a tree or list based on the gitlens.views.commits.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

gitlens.views.contributors.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Contributors view
Only applies when gitlens.views.commits.files.layout is set to auto
gitlens.views.contributors.pullRequests.enabled Specifies whether to query for pull requests associated with the current branch and commits in the Contributors view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.contributors.pullRequests.showForCommits Specifies whether to show pull requests (if any) associated with the current branch in the Contributors view. Requires a connection to a supported remote service (e.g. GitHub)
gitlens.views.contributors.showAllBranches Specifies whether to show commits from all branches in the Contributors view
gitlens.views.contributors.showStatistics Specifies whether to show contributor statistics in the Contributors view. This can take a while to compute depending on the repository size

Search & Compare View Settings

See also View Settings

Name Description
gitlens.views.compare.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Search Commits view
Only applies when gitlens.views.compare.files.layout is set to auto
gitlens.views.compare.avatars Specifies whether to show avatar images instead of commit (or status) icons in the Compare view
gitlens.views.compare.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Compare view. Only applies when gitlens.views.compare.files.layout is set to tree or auto
gitlens.views.compare.files.layout Specifies how the Compare view will display files

auto – automatically switches between displaying files as a tree or list based on the gitlens.views.compare.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

gitlens.views.compare.files.threshold Specifies when to switch between displaying files as a tree or list based on the number of files in a nesting level in the Compare view. Only applies when gitlens.views.compare.files.layout is set to auto
gitlens.views.search.avatars Specifies whether to show avatar images instead of commit (or status) icons in the Search Commits view
gitlens.views.search.files.compact Specifies whether to compact (flatten) unnecessary file nesting in the Search Commits view
Only applies when gitlens.views.compare.files.layout is set to tree or auto
gitlens.views.search.files.layout Specifies how the Search Commits view will display files
auto – automatically switches between displaying files as a tree or list based on the gitlens.views.compare.files.threshold value and the number of files at each nesting level
list – displays files as a list
tree – displays files as a tree

Gutter Blame Settings

Name Description
gitlens.blame.avatars Specifies whether to show avatar images in the gutter blame annotations
gitlens.blame.compact Specifies whether to compact (deduplicate) matching adjacent gutter blame annotations
gitlens.blame.dateFormat Specifies how to format absolute dates (e.g. using the ${date} token) in gutter blame annotations. See the Moment.js docs for valid formats
gitlens.blame.format Specifies the format of the gutter blame annotations. See Commit Tokens in the GitLens docs. Date formatting is controlled by the gitlens.blame.dateFormat setting
gitlens.blame.heatmap.enabled Specifies whether to provide a heatmap indicator in the gutter blame annotations
gitlens.blame.heatmap.location Specifies where the heatmap indicators will be shown in the gutter blame annotations

left – adds a heatmap indicator on the left edge of the gutter blame annotations
right – adds a heatmap indicator on the right edge of the gutter blame annotations

gitlens.blame.highlight.enabled Specifies whether to highlight lines associated with the current line
gitlens.blame.highlight.locations Specifies where the associated line highlights will be shown

gutter – adds a gutter indicator
line – adds a full-line highlight background color
overview – adds a decoration to the overview ruler (scroll bar)

gitlens.blame.ignoreWhitespace Specifies whether to ignore whitespace when comparing revisions during blame operations
gitlens.blame.separateLines Specifies whether gutter blame annotations will have line separators
gitlens.blame.toggleMode Specifies how the gutter blame annotations will be toggled

file – toggles each file individually
window – toggles the window, i.e. all files at once


Gutter Changes Settings

Name Description
gitlens.changes.locations Specifies where the indicators of the gutter changes annotations will be shown

gutter – adds a gutter indicator
overview – adds a decoration to the overview ruler (scroll bar)

gitlens.changes.toggleMode Specifies how the gutter changes annotations will be toggled

file – toggles each file individually
window – toggles the window, i.e. all files at once


Gutter Heatmap Settings

Name Description
gitlens.heatmap.ageThreshold Specifies 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)
gitlens.heatmap.coldColor Specifies the base color of the gutter heatmap annotations when the most recent change is older (cold) than the gitlens.heatmap.ageThreshold value
gitlens.heatmap.hotColor Specifies the base color of the gutter heatmap annotations when the most recent change is newer (hot) than the gitlens.heatmap.ageThreshold value
gitlens.heatmap.locations Specifies where the indicators of the gutter heatmap annotations will be shown

gutter – adds a gutter indicator
overview – adds a decoration to the overview ruler (scroll bar)

gitlens.heatmap.toggleMode Specifies how the gutter heatmap annotations will be toggled

file – toggles each file individually
window – toggles the window, i.e. all files at once


Git Command Palette Settings

Name Description
gitlens.gitCommands.closeOnFocusOut Specifies whether to dismiss the Git Commands Palette when focus is lost (if not, press ESC to dismiss)
gitlens.gitCommands.search.matchAll Specifies whether to match all or any commit message search patterns
gitlens.gitCommands.search.matchCase Specifies whether to match commit search patterns with or without regard to casing
gitlens.gitCommands.search.matchRegex Specifies whether to match commit search patterns using regular expressions
gitlens.gitCommands.search.showResultsInSideBar Specifies whether to show the commit search results directly in the quick pick menu, in the Side Bar, or will be based on the context
gitlens.gitCommands.skipConfirmations Specifies which (and when) Git commands will skip the confirmation step, using the format: git-command-name:(menu/command)
gitlens.gitCommands.sortBy Specifies how Git commands are sorted in the Git Command Palette

name – sorts commands by name
usage – sorts commands by last used date


Terminal Links Settings

Name Description
gitlens.terminalLinks.enabled Specifies whether to enable terminal links — autolinks in the integrated terminal to quickly jump to more details for commits, branches, tags, and more

Remote Provider Integration Settings

Name Description
gitlens.integrations.enabled Specifies whether to enable rich integrations with any supported remote services
gitlens.remotes Specifies custom remote services to be matched with Git remotes to detect custom domains for built-in remote services or provide support for custom remote services

Supported Types (e.g. "type": "GitHub"):

  • “GitHub”
  • “GitLab”
  • “Gerrit”
  • “GoogleSource”
  • “Gitea”
  • “AzureDevOps”
  • “Bitbucket”
  • “BitbucketServer”
  • “Custom”

Example:
"gitlens.remotes": [{ "domain": "git.corporate-url.com", "type": "GitHub" }]

Example:
"gitlens.remotes": [{ "regex": "ssh://(my.company.com):1234/git/(.+)", "type": "GitHub" }]

Example:
"gitlens.remotes": [{
"domain": "git.corporate-url.com",
"type": "Custom",
"name": "My Company",
"protocol": "https",
"urls": {
"repository": "https://git.corporate-url.com/${repo}",
"branches": "https://git.corporate-url.com/${repo}/branches",
"branch": "https://git.corporate-url.com/${repo}/commits/${branch}",
"commit": "https://git.corporate-url.com/${repo}/commit/${id}",
"file": "https://git.corporate-url.com/${repo}?path=${file}${line}",
"fileInBranch": "https://git.corporate-url.com/${repo}/blob/${branch}/${file}${line}",
"fileInCommit": "https://git.corporate-url.com/${repo}/blob/${id}/${file}${line}",
"fileLine": "#L${line}",
"fileRange": "#L${start}-L${end}"
}
}]

Example:
"gitlens.remotes": [{
"regex": "ssh:\/\/(my\.company\.com):1234\/git\/(.+)",
"type": "Custom",
"name": "My Company",
"protocol": "https",
"urls": {
"repository": "https://my.company.com/projects/${repoBase}/repos/${repoPath}",
"branches": "https://my.company.com/projects/${repoBase}/repos/${repoPath}/branches",
"branch": "https://my.company.com/projects/${repoBase}/repos/${repoPath}/commits/${branch}",
"commit": "https://my.company.com/projects/${repoBase}/repos/${repoPath}/commit/${id}",
"file": "https://my.company.com/projects/${repoBase}/repos/${repoPath}?path=${file}${line}",
"fileInBranch": "https://my.company.com/projects/${repoBase}/repos/${repoPath}/blob/${branch}/${file}${line}",
"fileInCommit": "https://my.company.com/projects/${repoBase}/repos/${repoPath}/blob/${id}/${file}${line}",
"fileLine": "#L${line}",
"fileRange": "#L${start}-L${end}"
}
}]


Date & Time Settings

Name Description
gitlens.defaultDateFormat Specifies how absolute dates will be formatted by default. See the Moment.js docs for valid formats
gitlens.defaultDateLocale Specifies the locale, a [BCP 47 language tag](https://en.wikipedia.org/wiki/IETF_language_tag#List_of_major_primary_language_subtags), to use for date formatting, defaults to the VS Code locale. Use system to follow the current system locale, or choose a specific locale, e.g en-US — US English, en-GB — British English, de-DE — German, ja-JP – Japanese, etc.
gitlens.defaultDateShortFormat Specifies how short absolute dates will be formatted by default. See the Moment.js docs for valid formats
gitlens.defaultDateSource Specifies whether commit dates should use the authored or committed date
gitlens.defaultDateStyle Specifies how dates will be displayed by default
gitlens.defaultTimeFormat Specifies how times will be formatted by default. See the Moment.js docs for valid formats

Menu & Toolbar Settings

Name Description
gitlens.menus Specifies which commands will be added to which menus
gitlens.fileAnnotations.command Specifies whether the file annotations button in the editor title shows a menu or immediately toggles the specified file annotations
null (default) – shows a menu to choose which file annotations to toggle
blame – toggles gutter blame annotations
heatmap – toggles gutter heatmap annotations
changes – toggles gutter changes annotations

Keyboard Shortcut Settings

Name Description
gitlens.keymap Specifies the keymap to use for GitLens shortcut keys

alternate – adds an alternate set of shortcut keys that start with Alt (⌥ on macOS)
chorded – adds a chorded set of shortcut keys that start with Ctrl+Shift+G (⌥⌘G on macOS)
none – no shortcut keys will be added


Modes Settings

Name Description
gitlens.mode.active Specifies the active GitLens mode, if any
gitlens.mode.statusBar.enabled Specifies whether to provide the active GitLens mode in the status bar
gitlens.mode.statusBar.alignment Specifies the active GitLens mode alignment in the status bar

left – aligns to the left
right – aligns to the right

gitlens.modes Specifies the user-defined GitLens modes

Example — adds heatmap annotations to the Reviewing mode
"gitlens.modes": { "review": { "annotations": "heatmap" } }

Example — adds a new Annotating mode with blame annotations
"gitlens.modes": {
"annotate": {
"name": "Annotating",
"statusBarItemName": "Annotating",
"description": "for root cause analysis",
"annotations": "blame",
"codeLens": false,
"currentLine": false,
"hovers": true
}
}


Autolink Settings

Name Description
gitlens.autolinks Specifies autolinks to external resources in commit messages. Use <num> as the variable for the reference number

Example to autolink Jira issues: (e.g. JIRA-123 ⟶ https://jira.company.com/issue?query=123)
"gitlens.autolinks": [{ "prefix": "JIRA-", "url": "https://jira.company.com/issue?query=<num>" }]


Misc Settings

Name Description
gitlens.defaultGravatarsStyle Specifies the style of the gravatar default (fallback) images

identicon – a geometric pattern
mp – 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 – a face with differing features and backgrounds

gitlens.liveshare.allowGuestAccess Specifies whether to allow guest access to GitLens features when using Visual Studio Live Share
gitlens.outputLevel Specifies how much (if any) output will be sent to the GitLens output channel
gitlens.showWelcomeOnInstall Specifies whether to show the Welcome (Quick Setup) experience on first install
gitlens.showWhatsNewAfterUpgrades Specifies whether to show the What’s New notification after upgrading to new feature releases
gitlens.sortBranchesBy Specifies how branches are sorted in quick pick menus and views
gitlens.sortContributorsBy Specifies how contributors are sorted in quick pick menus and views
gitlens.sortTagsBy Specifies how tags are sorted in quick pick menus and views
gitlens.advanced.abbreviatedShaLength Specifies the length of abbreviated commit SHAs (shas)
gitlens.advanced.abbreviateShaOnCopy Specifies whether to copy full or abbreviated commit SHAs to the clipboard. Abbreviates to the length of gitlens.advanced.abbreviatedShaLength..
gitlens.advanced.blame.customArguments Specifies additional arguments to pass to the git blame command
gitlens.advanced.blame.delayAfterEdit Specifies the time (in milliseconds) to wait before re-blaming an unsaved document after an edit. Use 0 to specify an infinite wait
gitlens.advanced.blame.sizeThresholdAfterEdit Specifies the maximum document size (in lines) allowed to be re-blamed after an edit while still unsaved. Use 0 to specify no maximum
gitlens.advanced.caching.enabled Specifies whether git output will be cached — changing the default is not recommended
gitlens.advanced.commitOrdering Specifies the order by which commits will be shown. If unspecified, commits will be shown in reverse chronological order

date – shows commits in reverse chronological order of the commit timestamp
author-date – shows commits in reverse chronological order of the author timestamp
topo – shows commits in reverse chronological order of the commit timestamp, but avoids intermixing multiple lines of history

gitlens.advanced.externalDiffTool Specifies an optional external diff tool to use when comparing files. Must be a configured Git difftool.
gitlens.advanced.externalDirectoryDiffTool Specifies an optional external diff tool to use when comparing directories. Must be a configured Git difftool.
gitlens.advanced.fileHistoryFollowsRenames Specifies whether file histories will follow renames — will affect how merge commits are shown in histories
gitlens.advanced.fileHistoryShowAllBranches Specifies whether file histories will show commits from all branches
gitlens.advanced.maxListItems Specifies the maximum number of items to show in a list. Use 0 to specify no maximum
gitlens.advanced.maxSearchItems Specifies the maximum number of items to show in a search. Use 0 to specify no maximum
gitlens.advanced.messages Specifies which messages should be suppressed
gitlens.advanced.quickPick.closeOnFocusOut Specifies whether to dismiss quick pick menus when focus is lost (if not, press ESC to dismiss)
gitlens.advanced.repositorySearchDepth Specifies how many folders deep to search for repositories
gitlens.advanced.similarityThreshold Specifies the amount (percent) of similarity a deleted and added file pair must have to be considered a rename
gitlens.strings.codeLens.unsavedChanges.recentChangeAndAuthors Specifies the string to be shown in place of both the recent change and authors CodeLens when there are unsaved changes
gitlens.strings.codeLens.unsavedChanges.recentChangeOnly Specifies the string to be shown in place of the recent change CodeLens when there are unsaved changes
gitlens.strings.codeLens.unsavedChanges.authorsOnly Specifies the string to be shown in place of the authors CodeLens when there are unsaved changes

Themable Colors

GitLens defines a set of themable colors which can be provided by vscode themes or directly by the user using workbench.colorCustomizations.

Name Description
gitlens.gutterBackgroundColor Specifies the background color of the gutter blame annotations
gitlens.gutterForegroundColor Specifies the foreground color of the gutter blame annotations
gitlens.gutterUncommittedForegroundColor Specifies the foreground color of an uncommitted line in the gutter blame annotations
gitlens.trailingLineBackgroundColor Specifies the background color of the trailing blame annotation
gitlens.trailingLineForegroundColor Specifies the foreground color of the trailing blame annotation
gitlens.lineHighlightBackgroundColor Specifies the background color of the associated line highlights in blame annotations
gitlens.lineHighlightOverviewRulerColor Specifies the overview ruler color of the associated line highlights in blame annotations
Have feedback about this article? Did we miss something? Let us know!
On this page