Last updated: July 2025
Overview

GitLens offers a powerful and easy-to-use interactive settings editor that helps you configure many features directly in Visual Studio Code.
To open the editor, run the GitLens: Open Settings command (gitlens.showSettingsPage
) from the Command Palette.
GitLens is highly customizable—nearly every feature can be tailored to fit your workflow using the available settings.
Current Line Blame Settings
Use these settings to customize how GitLens displays blame annotations for the current line of code. These annotations help identify the last commit that modified a line, along with contextual details like date, author, and related pull requests.
Name | Description |
---|---|
gitlens.currentLine.dateFormat |
Defines how absolute dates appear in current line blame annotations using the ${date} token. Refer to the Moment.js format guide. |
gitlens.currentLine.enabled |
Enables or disables current line blame annotations by default. Toggle annotations in any window with the Toggle Line Blame Annotations command (gitlens.toggleLineBlame ). |
gitlens.currentLine.format |
Sets the display format for the annotation. See Commit Tokens for supported placeholders. Date format is managed by gitlens.currentLine.dateFormat . |
gitlens.currentLine.pullRequests.enabled |
Shows pull request info (if available) for the commit in the current line annotation. Requires a connected remote provider like GitHub. |
gitlens.currentLine.scrollable |
Determines if annotations can scroll into view when off-screen. Note: Setting this to false disables hover tooltips unless gitlens.hovers.currentLine.over is set to line . |
gitlens.currentLine.uncommittedChangesFormat |
Customizes annotation format for uncommitted changes. An empty string disables annotations for these changes. |
gitlens.currentLine.fontFamily |
Sets the font family for inline blame annotations. |
gitlens.currentLine.fontSize |
Sets the font size for inline blame annotations. |
gitlens.currentLine.fontStyle |
Sets the font style for inline blame annotations. |
gitlens.currentLine.fontWeight |
Sets the font weight for inline blame annotations. |
Git CodeLens Settings
These settings control GitLens CodeLens overlays, which provide inline contextual information such as author and commit history directly in your code.
Name | Description |
---|---|
gitlens.codeLens.authors.command |
Sets the command triggered when an authors CodeLens is clicked. Default is gitlens.toggleFileBlame . To disable click actions, set this to false .
Available commands include: |
gitlens.codeLens.authors.enabled |
Enables or disables the authors CodeLens. Displays the number of contributors and highlights the most active author for a file or block. |
gitlens.codeLens.enabled |
Globally enables or disables all GitLens CodeLens features. Use the Toggle Git CodeLens command (gitlens.toggleCodeLens ) to turn this feature on or off for the current window. |
gitlens.codeLens.includeSingleLineSymbols |
Determines whether GitLens shows CodeLens for single-line symbols (e.g., one-line functions). |
gitlens.codeLens.recentChange.command |
Sets the command triggered when a recent change CodeLens is clicked. Default is gitlens.showQuickCommitFileDetails . To disable, set to false .
Available commands mirror those listed under |
gitlens.codeLens.recentChange.enabled |
Enables or disables the recent change CodeLens. Displays the author and timestamp of the most recent commit for the line or block. |
gitlens.codeLens.scopes |
Controls where Git CodeLens is displayed:document – top of the filecontainers – start of container symbols (e.g., classes, interfaces)blocks – start of block symbols (e.g., functions, methods) |
gitlens.codeLens.symbolScopes |
Defines specific symbol types to include or exclude from CodeLens. Prefix a symbol with ! to exclude it. Uses SymbolKind values. |
Status Bar Settings
These settings control how GitLens displays blame information in the status bar, including format, alignment, and click behavior.
Name | Description |
---|---|
gitlens.statusBar.alignment |
Controls where the blame annotation appears in the status bar.
|
gitlens.statusBar.command |
Specifies the command executed when clicking the blame status bar item. Default is gitlens.toggleFileBlame . You can choose from a list of commands, such as:
|
gitlens.statusBar.dateFormat |
Sets the date format using the ${date} token. For valid formats, see the Moment.js documentation. |
gitlens.statusBar.enabled |
Enables or disables blame information in the status bar. |
gitlens.statusBar.format |
Defines the display format of blame data in the status bar. Refer to Commit Tokens. Controlled alongside gitlens.statusBar.dateFormat . |
gitlens.statusBar.pullRequests.enabled |
Shows pull request details for the commit in the status bar, if available. Requires a connected remote (e.g., GitHub). |
gitlens.statusBar.reduceFlicker |
Reduces visual flicker by preventing blame info from clearing when switching lines. |
gitlens.statusBar.tooltipFormat |
Specifies the markdown format used in the hover tooltip over blame info. See Commit Tokens. |
Hover Settings
Use these settings to control when and how GitLens displays hover popups that show commit details, line changes, avatars, and pull request information.
Name | Description |
---|---|
gitlens.hovers.annotations.changes |
Enables a changes (diff) hover for all lines when blame annotations are shown. |
gitlens.hovers.annotations.details |
Enables a commit details hover for all lines when blame annotations are shown. |
gitlens.hovers.annotations.enabled |
Enables all hovers related to blame annotations. |
gitlens.hovers.annotations.over |
Controls when annotation hovers trigger:
|
gitlens.hovers.avatars |
Displays avatar images in hovers when enabled. |
gitlens.hovers.avatarSize |
Sets the avatar image size in hover popups. |
gitlens.hovers.changesDiff |
Controls the diff content shown in hovers:
|
gitlens.hovers.currentLine.changes |
Enables a changes (diff) hover for the current line. |
gitlens.hovers.currentLine.details |
Enables a commit details hover for the current line. |
gitlens.hovers.currentLine.enabled |
Enables all hover popups for the current line. |
gitlens.hovers.currentLine.over |
Controls when hovers appear on the current line:
|
gitlens.hovers.detailsMarkdownFormat |
Defines the markdown format used for commit details hovers. See Commit Tokens. |
gitlens.hovers.enabled |
Enables or disables all GitLens hovers. |
gitlens.hovers.autolinks.enabled |
Automatically links external resources mentioned in commit messages. |
gitlens.hovers.autolinks.enhanced |
Fetches enhanced details for autolinks using supported remote services (e.g., GitHub). |
gitlens.hovers.pullRequests.enabled |
Displays pull request information (if available) in hovers. Requires connection to a supported remote service. |
View Settings
Name | Description |
---|---|
gitlens.views.defaultItemLimit |
Specifies the default number of items to show in a view list. Use 0 for 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.formats.stashes.tooltip |
Specifies the tooltip format of stashes in GitLens views. |
gitlens.views.pageItemLimit |
Specifies the number of items to show per page when paginating a view list. Use 0 for 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 histories in the views. |
gitlens.views.commits.files.icon |
Specifies how the Commits view displays file icons. |
gitlens.views.repositories.files.icon |
Specifies how the Repositories view displays file icons. |
gitlens.views.branches.files.icon |
Specifies how the Branches view displays file icons. |
gitlens.views.formats.files.label |
Specifies how the Remotes view displays file icons. |
gitlens.views.stashes.files.icon |
Specifies how the Stashes view displays file icons. |
gitlens.views.tags.files.icon |
Specifies how the Tags view displays file icons. |
gitlens.views.worktrees.files.icon |
Specifies how the Worktrees view displays file icons. |
gitlens.views.contributors.files.icon |
Specifies how the Contributors view displays file icons. |
gitlens.views.searchAndCompare.files.icon |
Specifies how the Search & Compare view displays file icons. |
gitlens.views.collapseWorktreesWhenPossible |
Specifies whether to collapse opened worktrees into a single repository in views when possible. |
Gitlens.views.showCurrentBranchOnTo |
Specifies whether the current branch is shown at the top of views. |
gitlens.views.scm.grouped.default |
Specifies the default view shown in the grouped GitLens view for new workspaces/folders (otherwise last selected view is remembered). |
gitlens.views.scm.grouped.views |
Specifies which views to show in the grouped GitLens view. |
Commits View Settings
See also View Settings.
These settings control how the GitLens Commits view displays commit data, associated files, and pull request information.
Name | Description |
---|---|
gitlens.views.commits.avatars |
Shows avatar images in place of commit or status icons in the Commits view. |
gitlens.views.commits.files.compact |
Flattens unnecessary file nesting when file layout is set to tree or auto . |
gitlens.views.commits.files.layout |
Controls how files are displayed:
|
gitlens.views.commits.files.threshold |
Defines the threshold for switching between tree and list layouts when layout is set to auto . |
gitlens.views.commits.pullRequests.enabled |
Enables querying for pull requests associated with the current branch or commits. Requires a connected remote (e.g., GitHub). |
gitlens.views.commits.pullRequests.showForBranches |
Shows pull requests linked to the current branch in the Commits view. Requires a connected remote service. |
gitlens.views.commits.pullRequests.showForCommits |
Displays pull requests tied to individual commits in the Commits view. Requires a connected remote service. |
gitlens.views.commits.reveal |
Determines whether commits are revealed in the Commits view or the Repositories view. |
gitlens.views.commits.showBranchComparison |
Controls whether to display branch or working tree comparisons:
|
Repositories View Settings
See also View Settings.
These settings customize how repositories are displayed and interacted with in the GitLens Repositories view.
Name | Description |
---|---|
gitlens.views.repositories.avatars |
Displays avatar images instead of icons in the Repositories view. |
gitlens.views.repositories.autoRefresh |
Automatically refreshes the view when the repository or filesystem changes. |
gitlens.views.repositories.autoReveal |
Auto-reveals repositories when opening files. |
gitlens.views.repositories.branches.layout |
Controls branch layout:
|
gitlens.views.repositories.branches.showBranchComparison |
Displays comparison with a user-selected reference (branch, tag, etc.) under each branch. |
gitlens.views.repositories.compact |
Enables a compact display mode in the Repositories view. |
gitlens.views.repositories.files.compact |
Flattens unnecessary file nesting when file layout is set to tree or auto . |
gitlens.views.repositories.files.layout |
Controls file display layout:
|
gitlens.views.repositories.files.threshold |
Sets the threshold for switching between tree and list layouts when layout is set to auto . |
gitlens.views.repositories.includeWorkingTree |
Includes working tree file status for each repository. |
gitlens.views.repositories.showBranchComparison |
Displays comparison between a selected reference and the current branch or working tree. |
gitlens.views.repositories.showBranches |
Shows branches for each repository. |
itlens.views.repositories.showCommits |
Displays commits from the current branch for each repository. |
gitlens.views.repositories.showContributors |
Shows contributors for each repository. |
gitlens.views.repositories.showIncomingActivity |
Displays experimental incoming activity for each repository. |
gitlens.views.repositories.showRemotes |
Shows configured remotes for each repository. |
gitlens.views.repositories.showStashes |
Displays stashes for each repository. |
gitlens.views.repositories.showTags |
Shows tags for each repository. |
gitlens.views.repositories.showUpstreamStatus |
Displays upstream tracking status of the current branch for each repository. |
File History View Settings
See also View Settings.
These settings configure the behavior and display options for the GitLens File History view.
Name | Description |
---|---|
gitlens.views.fileHistory.avatars |
Displays avatar images instead of status icons in the File History view. |
gitlens.advanced.fileHistoryShowMergeCommits |
Controls whether merge commits are shown in file history:
|
Line History View Settings
See also View Settings.
These settings configure the display behavior of the GitLens Line History view.
Name | Description |
---|---|
gitlens.views.lineHistory.avatars |
Displays avatar images instead of status icons in the Line History view. |
Branch View Settings
See also View Settings.
These settings configure the display and behavior of the GitLens Branches view.
Name | Description |
---|---|
gitlens.views.branches.avatars |
Displays avatar images instead of commit or status icons in the Branches view. |
gitlens.views.branches.branches.layout |
Controls how branches are displayed:
|
gitlens.views.branches.files.compact |
Flattens unnecessary file nesting when file layout is set to tree or auto . |
gitlens.views.branches.files.layout |
Controls file display layout:
|
gitlens.views.branches.files.threshold |
Defines the threshold for switching between tree and list layouts when layout is set to auto . |
gitlens.views.branches.pullRequests.enabled |
Enables querying for pull requests associated with the current branch and commits. Requires a connected remote service. |
gitlens.views.branches.pullRequests.showForBranches |
Displays pull requests linked to the current branch in the Branches view. Requires a connected remote service. |
gitlens.views.branches.pullRequests.showForCommits |
Displays pull requests tied to individual commits. Requires a connected remote service. |
gitlens.views.branches.reveal |
Specifies whether branches are revealed in the Branches view or in the Repositories view. |
gitlens.views.branches.showBranchComparison |
Controls display of branch comparisons:
|
Remotes View Settings
See also View Settings.
These settings define how branches, files, and pull requests appear in the GitLens Remotes view.
Name | Description |
---|---|
gitlens.views.remotes.avatars |
Displays avatar images instead of commit or status icons in the Remotes view. |
gitlens.views.remotes.branches.layout |
Controls how branches are displayed:
|
gitlens.views.remotes.files.compact |
Flattens unnecessary file nesting when file layout is set to tree or auto . |
gitlens.views.remotes.files.layout |
Controls file display layout:
|
gitlens.views.remotes.files.threshold |
Defines the threshold for switching between tree and list layouts when layout is set to auto . |
gitlens.views.remotes.pullRequests.enabled |
Enables pull request queries for the current branch and commits. Requires a connected remote service. |
gitlens.views.remotes.pullRequests.showForBranches |
Displays pull requests associated with branches in the Remotes view. Requires a connected remote service. |
gitlens.views.remotes.pullRequests.showForCommits |
Displays pull requests tied to commits in the Remotes view. Requires a connected remote service. |
gitlens.views.remotes.reveal |
Determines whether remotes appear in the Remotes view or are shown in the Repositories view. |
gitlens.views.remotes.showBranchComparison |
Controls display of branch comparisons:
|
Stashes View Settings
See also View Settings.
These settings control how files and stash entries are displayed in the GitLens Stashes view.
Name | Description |
---|---|
gitlens.views.stashes.files.compact |
Flattens unnecessary file nesting in the Stashes view. Applies when file layout is set to tree or auto . |
gitlens.views.stashes.files.layout |
Controls file display layout:
|
gitlens.views.stashes.files.threshold |
Defines the threshold for switching between tree and list layouts when layout is set to auto . |
gitlens.views.stashes.reveal |
Determines whether stashes appear in the Stashes view or the Repositories view. |
Tags View Settings
See also View Settings.
These settings control how Git tags and related files appear in the GitLens Tags view.
Name | Description |
---|---|
gitlens.views.tags.avatars |
Displays avatar images instead of commit or status icons in the Tags view. |
gitlens.views.tags.branches.layout |
Controls tag layout:
|
gitlens.views.tags.files.compact |
Flattens unnecessary file nesting when layout is set to tree or auto . |
gitlens.views.tags.files.layout |
Controls file display layout:
|
gitlens.views.tags.files.threshold |
Defines the threshold for switching between tree and list layouts when layout is set to auto . |
gitlens.views.tags.reveal |
Determines whether tags are shown in the Tags view or revealed in the Repositories view. |
Worktrees View Settings
See also View Settings.
These settings control how worktrees and related information appear in the GitLens Worktrees view.
Name | Description |
---|---|
gitlens.views.worktrees.avatars |
Displays avatar images instead of commit or status icons in the Worktrees view. |
gitlens.views.worktrees.files.compact |
Flattens unnecessary file nesting. Applies only when layout is set to tree or auto . |
gitlens.views.worktrees.files.layout |
Controls how files are displayed:
|
gitlens.views.worktrees.files.threshold |
Defines when to switch between tree and list layouts based on file count. Applies only when layout is auto . |
gitlens.views.worktrees.pullRequests.enabled |
Enables pull request queries for the current worktree branch and its commits. Requires a supported remote service. |
gitlens.views.worktrees.pullRequests.showForBranches |
Shows pull requests related to the current worktree branch. Requires a supported remote service. |
gitlens.views.worktrees.pullRequests.showForCommits |
Displays pull requests (if any) associated with commits in the Worktrees view. Requires a supported remote service. |
gitlens.views.worktrees.reveal |
Controls whether worktrees appear in the Worktrees view or default to the Repositories view. |
gitlens.views.worktrees.showBranchComparison |
Shows a comparison of 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
|
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.
These settings control the display options for files and avatars in the GitLens Search Commits and Compare views.
Name | Description |
---|---|
gitlens.views.compare.files.compact |
Flattens unnecessary file nesting in the Compare view. Applies when layout is set to tree or auto . |
gitlens.views.compare.files.layout |
Controls file display in the Compare view:
|
gitlens.views.compare.files.threshold |
Determines when to switch between tree and list layouts based on the number of files in a nesting level. Applies only when layout is auto . |
gitlens.views.compare.avatars |
Shows avatar images instead of commit or status icons in the Compare view. |
gitlens.views.search.files.compact |
Flattens unnecessary file nesting in the Search Commits view. Applies when layout is set to tree or auto . |
gitlens.views.search.files.layout |
Controls file display in the Search Commits view:
|
gitlens.views.search.avatars |
Shows avatar images instead of commit or status icons in the Search Commits view. |
File Blame Settings
Name | Description |
---|---|
gitlens.blame.avatars |
Shows avatar images in file blame annotations. |
gitlens.blame.compact |
Compacts (deduplicates) adjacent matching blame annotations. |
gitlens.blame.dateFormat |
Formats absolute dates (e.g., using ${date} ) in blame annotations. See the Moment.js documentation for valid formats. |
gitlens.blame.format |
Specifies the display format of blame annotations. See Commit Tokens. Date format is controlled by gitlens.blame.dateFormat . |
gitlens.blame.heatmap.enabled |
Enables a heatmap indicator in blame annotations. |
gitlens.blame.heatmap.location |
Determines heatmap indicator placement:
|
gitlens.blame.highlight.enabled |
Highlights lines related to the current line. |
gitlens.blame.highlight.locations |
Specifies where highlights appear:
|
gitlens.blame.ignoreWhitespace |
Ignores whitespace differences when comparing revisions during blame operations. |
gitlens.blame.separateLines |
Shows line separators in blame annotations. |
gitlens.blame.toggleMode |
Determines toggle scope:
|
gitlens.blame.fontFamily |
Sets font family for file blame annotations. |
gitlens.blame.fontSize |
Sets font size for file blame annotations. |
gitlens.blame.fontWeight |
Sets font weight for file blame annotations. |
gitlens.blame.fontStyle |
Sets font style for file blame annotations. |
File Changes Settings
Name | Description |
---|---|
gitlens.changes.locations |
Controls where file changes indicators appear:
|
gitlens.changes.toggleMode |
Determines toggle scope for file changes annotations:
|
File Heatmap Settings
Name | Description |
---|---|
gitlens.heatmap.ageThreshold |
Defines the age threshold in days for heatmap coloring. Changes older than this use gitlens.heatmap.coldColor , newer changes use gitlens.heatmap.hotColor . |
gitlens.heatmap.coldColor |
Base color for file heatmap annotations when changes are older than the age threshold (cold). |
gitlens.heatmap.hotColor |
Base color for file heatmap annotations when changes are newer than the age threshold (hot). |
gitlens.heatmap.locations |
Specifies where heatmap indicators appear:
|
gitlens.heatmap.toggleMode |
Determines toggle scope for file heatmap annotations:
|
Git Command Palette Settings
Name | Description |
---|---|
gitlens.gitCommands.closeOnFocusOut |
Determines whether the Git Commands Palette dismisses automatically when focus is lost. If disabled, press ESC to dismiss manually. |
gitlens.gitCommands.search.matchAll |
Controls whether commit message searches match all patterns or any pattern. |
gitlens.gitCommands.search.matchCase |
Enables case-sensitive matching for commit message searches. |
gitlens.gitCommands.search.matchRegex |
Enables regular expression matching for commit message searches. |
gitlens.gitCommands.search.showResultsInSideBar |
Controls where commit search results display: in the quick pick menu, the Side Bar, or context-dependent. |
gitlens.gitCommands.skipConfirmations |
Specifies which Git commands skip confirmation prompts. Format: git-command-name:(menu/command) . |
gitlens.gitCommands.sortBy |
Specifies sorting order of commands in the Git Command Palette:
|
Terminal Links Settings
Name | Description |
---|---|
gitlens.terminalLinks.enabled |
Enables terminal links—autolinks in the integrated terminal that provide quick access to details for commits, branches, tags, and more. |
Remote Provider Integration Settings
Name | Description |
---|---|
gitlens.integrations.enabled |
Enables rich integrations with supported remote services. |
gitlens.remotes |
Defines custom remote services to match Git remotes for detecting custom domains or supporting additional remote services.
Supported types include:
Examples:
Custom example:
Another custom example:
|
Date & Time Settings
Name | Description |
---|---|
gitlens.defaultDateFormat |
Specifies the default format for absolute dates. See the Moment.js documentation for valid format strings. |
gitlens.defaultDateLocale |
Specifies the locale for date formatting, using a BCP 47 language tag. Defaults to the VS Code locale. Use system to follow the current system locale or specify a locale like en-US (US English), en-GB (British English), de-DE (German), ja-JP (Japanese), etc. |
gitlens.defaultDateShortFormat |
Specifies the default format for short absolute dates. See the Moment.js documentation for valid format strings. |
gitlens.defaultDateSource |
Determines whether commit dates use the authored date or the committed date. |
gitlens.defaultDateStyle |
Specifies the default display style for dates. |
gitlens.defaultTimeFormat |
Specifies the default format for times. See the Moment.js documentation for valid format strings. |
Menu & Toolbar Settings
Name | Description |
---|---|
gitlens.menus |
Defines which commands are added to specific menus. |
gitlens.fileAnnotations.command |
Controls the behavior of the file annotations button in the editor title:
|
Keyboard Shortcut Settings
Name | Description |
---|---|
gitlens.keymap |
Specifies the keymap used for GitLens shortcuts:
|
gitlens.fileAnnotations.dismissOnEscape |
Determines whether pressing ESC dismisses active file annotations. |
Modes Settings
Name | Description |
---|---|
gitlens.mode.active |
Specifies the currently active GitLens mode, if any. |
gitlens.mode.statusBar.enabled |
Enables display of the active GitLens mode in the status bar. |
gitlens.mode.statusBar.alignment |
Controls alignment of the active mode display in the status bar:
|
gitlens.modes |
Defines user-configured GitLens modes.
Example: Add heatmap annotations to a Reviewing mode: Example: Define a new Annotating mode with blame annotations:
|
Autolink Settings
Name | Description |
---|---|
gitlens.autolinks |
Defines autolinks to external resources in commit messages. Use <num> as a placeholder for the reference number.
Example for Jira issues: |
AI Settings – Preview
Name | Description |
---|---|
gitlens.ai.experimental.model |
Specifies the AI model to use. Supported models include:vscode openai:gpt-4 openai:gpt-4o xai:grok-beta openai:gpt-4-32k anthropic:claude-2 openai:gpt-4-turbo openai:gpt-4o-mini anthropic:claude-2.1 openai:gpt-3.5-turbo google:gemini-1.0-pro openai:gpt-3.5-turbo-16k anthropic:claude-instant-1 openai:gpt-4-turbo-preview google:gemini-1.5-pro-latest anthropic:claude-3-opus-latest google:gemini-1.5-flash-latest anthropic:claude-3-opus-20240229 anthropic:claude-3-haiku-20240307 anthropic:claude-3-5-sonnet-latest anthropic:claude-3-sonnet-20240229 anthropic:claude-3-5-sonnet-20240620 anthropic:claude-3-5-sonnet-20241022
|
gitlens.ai.experimental.vscode.model |
Specifies the VS Code extension-provided AI model to use when gitlens.ai.experimental.model is set to vscode . |
gitlens.ai.experimental.generateCommitMessage.enabled |
Enables GitLens’ experimental AI-powered, on-demand commit message generation. |
gitlens.ai.experimental.openai.url |
Specifies a custom Azure URL to access an OpenAI model. Format:https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version={api-version} |
gitlens.experimental.generateCommitMessagePrompt |
Specifies the prompt to guide the AI on structuring or styling generated commit messages (e.g., in the style of a pirate). |
Misc Settings
Name | Description |
---|---|
gitlens.defaultGravatarsStyle |
Specifies the style of default (fallback) gravatar images:
|
gitlens.liveshare.allowGuestAccess |
Allows guest access to GitLens features during Visual Studio Live Share sessions. |
gitlens.outputLevel |
Controls the verbosity of output sent to the GitLens output channel. |
gitlens.showWelcomeOnInstall |
Shows the Welcome (Quick Setup) experience on first install. |
gitlens.showWhatsNewAfterUpgrades |
Shows the What’s New notification after upgrading to new feature releases. |
gitlens.sortBranchesBy |
Determines how branches are sorted in quick pick menus and views. |
gitlens.sortContributorsBy |
Determines how contributors are sorted in quick pick menus and views. |
gitlens.sortTagsBy |
Determines how tags are sorted in quick pick menus and views. |
gitlens.sortRepositoriesBy |
Determines how repositories are sorted in quick pick menus and views. |
gitlens.advanced.abbreviatedShaLength |
Length of abbreviated commit SHAs. |
gitlens.advanced.abbreviateShaOnCopy |
Determines whether copied commit SHAs are abbreviated to the length of gitlens.advanced.abbreviatedShaLength . |
gitlens.advanced.blame.customArguments |
Additional arguments to pass to the git blame command. |
gitlens.fileAnnotations.preserveWhileEditing |
Allows file annotations on unsaved (dirty) files. The gitlens.advanced.blame.delayAfterEdit setting controls the delay before updating annotations, which applies only if the file size is under gitlens.advanced.sizeThresholdAfterEdit (default 5000 lines). |
gitlens.advanced.blame.delayAfterEdit |
Time (milliseconds) to wait before re-blaming an unsaved document after an edit. Use 0 to wait indefinitely. |
gitlens.advanced.blame.sizeThresholdAfterEdit |
Maximum document size (lines) to re-blame after an edit while still unsaved. Use 0 for no maximum. |
gitlens.advanced.caching.enabled |
Enables caching of git output (changing this is not recommended). |
gitlens.advanced.commitOrdering |
Ordering method for commits (default is reverse chronological by commit date):
|
gitlens.advanced.externalDiffTool |
Optional external diff tool for file comparisons (must be a configured Git difftool). |
gitlens.advanced.externalDirectoryDiffTool |
Optional external diff tool for directory comparisons (must be a configured Git difftool). |
gitlens.advanced.fileHistoryFollowsRenames |
Enables following file history through renames, affecting how merge commits display. |
gitlens.advanced.fileHistoryShowAllBranches |
Shows commits from all branches in file history views. |
gitlens.advanced.maxListItems |
Maximum number of items shown in lists. Use 0 for no limit. |
gitlens.advanced.maxSearchItems |
Maximum number of items shown in search results. Use 0 for no limit. |
gitlens.advanced.messages |
Specifies which messages to suppress. |
gitlens.advanced.quickPick.closeOnFocusOut |
Dismisses quick pick menus when focus is lost. If disabled, press ESC to dismiss manually. |
gitlens.advanced.repositorySearchDepth |
Depth (number of folders) to search for repositories. |
gitlens.advanced.similarityThreshold |
Percent similarity required for a deleted and added file pair to be considered a rename. |
gitlens.strings.codeLens.unsavedChanges.recentChangeAndAuthors |
String shown in place of both recent change and authors CodeLens when there are unsaved changes. |
gitlens.strings.codeLens.unsavedChanges.recentChangeOnly |
String shown in place of the recent change CodeLens when there are unsaved changes. |
gitlens.strings.codeLens.unsavedChanges.authorsOnly |
String shown in place of the authors CodeLens when there are unsaved changes. |
gitlens.worktrees.defaultLocation |
Path variables:
|
gitlens.visualHistory.allowMultiple |
Allows opening multiple Visual File History instances in the editor area. |
gitlens.liveshare.enabled |
Enables integration with Visual Studio Live Share. |
multiDiffEditor.experimental.enabled |
Enables VS Code’s experimental multi-diff editor (requires VS Code 1.85+). |
gitlens.views.openChangesInMultiDiffEditor |
Controls whether to open multiple changes in VS Code’s multi-diff editor (single tab) or individual diff editors (multiple tabs). Requires multiDiffEditor.experimental.enabled and VS Code 1.85+. |
gitlens.experimental.cloudIntegrations.enabled |
Enables GitHub integration via GitKraken account cloud integration. |
Themable Colors
GitLens defines a set of themable colors that can be provided by VS Code themes or customized by users via workbench.colorCustomizations
.
Name | Description |
---|---|
gitlens.gutterBackgroundColor |
Background color of file blame annotations in the gutter. |
gitlens.gutterForegroundColor |
Foreground color of file blame annotations in the gutter. |
gitlens.gutterUncommittedForegroundColor |
Foreground color for uncommitted lines in file blame annotations. |
gitlens.trailingLineBackgroundColor |
Background color of trailing blame annotations. |
gitlens.trailingLineForegroundColor |
Foreground color of trailing blame annotations. |
gitlens.lineHighlightBackgroundColor |
Background color for associated line highlights in blame annotations. |
gitlens.lineHighlightOverviewRulerColor |
Overview ruler color for associated line highlights in blame annotations. |
gitlens.focus.allowMultiple |
Allows opening multiple instances of the Focus feature in the editor area. |
Commit Graph Settings
Name | Description |
---|---|
gitlens.graph.showUpstreamStatus |
Enables or disables upstream (ahead/behind) indicators on branches. |
gitlens.graph.pullRequests |
Enables or disables pull request icons in the Commit Graph. |
gitlens.graph.dimMergeCommits |
Dims (deemphasizes) merge commit rows in the graph. |
gitlens.graph.scrollRowPadding |
Number of rows from the edge at which the graph scrolls when changing the selected row via keyboard or search. |
gitlens.graph.experimental.location |
Location where the Commit Graph is shown:
|
gitlens.graph.layout |
Default layout for the Commit Graph. Options:
|
gitlens.graph.allowMultiple |
Allows opening multiple Commit Graph instances in the editor area. |
gitlens.graph.sidebar.enabled |
Shows or hides the sidebar in the Commit Graph. |
Cloud Patches (Preview) Settings
Name | Description |
---|---|
gitlens.cloudPatches.enabled |
Enables or disables Cloud Patches. Defaults to true . |
Launchpad Settings
Name | Description |
---|---|
gitlens.launchpad.ignoredRepositories |
List of repositories (in owner/name format) to ignore in Launchpad. |
gitlens.launchpad.ignoredOrganizations |
List of organizations or users to ignore in Launchpad. |
gitlens.launchpad.staleThreshold |
Number of days after which a pull request is considered stale and moved to the “Other” category. |
gitlens.launchpad.indicator.enabled |
Enables the Launchpad indicator in the status bar. |
gitlens.launchpad.indicator.icon |
Style of the Launchpad indicator icon. |
gitlens.launchpad.indicator.label |
Style of the Launchpad indicator label. |
gitlens.launchpad.indicator.groups |
Critical pull request categories to summarize in the indicator tooltip. |
gitlens.launchpad.indicator.useColors |
Enables color usage in the Launchpad indicator. |
gitlens.launchpad.indicator.openInEditor |
Opens the Launchpad in the editor when the indicator is clicked. |
gitlens.launchpad.indicator.polling.enabled |
Enables regular polling for pull request changes. |
gitlens.launchpad.indicator.polling.interval |
Polling interval in minutes for checking pull request changes. |
gitlens.views.launchpad.enabled |
(Experimental) Enables the experimental Launchpad view. |
gitlens.launchpad.includedOrganizations |
Organizations to include in Launchpad. |