GitLens supercharges the built-in Visual Studio Code Git capabilities. It helps you to visualize code authorship at a glance via Git blame annotations and code lens, seamlessly navigate and explore the history of a file or branch, gain valuable insights via powerful comparison commands, and so much more.
GitLens provides an unobtrusive blame annotation at the end of the current line, a status bar item showing the commit information (author and date, by default) of the current line, code lens showing the most recent commit and # of authors of the file and/or code block, and many commands for exploring commits and histories, comparing and navigating revisions, stash access, repository status, and more. GitLens is also highly customizable to meet your specific needs — find code lens intrusive or the current line blame annotation distracting — no problem, it is easy to turn them off or change how they behave.
Features blame annotations, code lens, status bar details, quick pick menus for navigation and exploration, compare with previous, and more
While GitLens is highly customizable and provides many configuration settings, here are the most important ones for controlling GitLens' behavior
Name | Description |
---|---|
gitlens.blame.line.enabled |
Specifies whether or not 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 session |
gitlens.codeLens.enabled |
Specifies whether or not to provide any Git code lens, by default Use the Toggle Git Code Lens command (gitlens.toggleCodeLens ) to toggle the Git code lens on and off for the current session |
gitlens.gitExplorer.enabled |
Specifies whether or not to show the GitLens view |
gitlens.statusBar.enabled |
Specifies whether or not to provide blame information on the status bar |
gitlens.keymap |
Specifies the keymap to use for GitLens shortcut keysstandard - adds a standard set of shortcut keyschorded - 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 an unobtrusive, highly customizable and themable, Git blame annotation to the end of the current line (optional, on by default)
Contains the author, date, and message of the line's most recent commit, by default
Adds a details
hover annotation to the current line annotation, which provides more commit details (optional, on by default)
Open Changes
, Blame Previous Revision
, Open in Remote
, and Show More Actions
command buttonsShow Commit Details
command (gitlens.showQuickCommitDetails
)Adds a changes
(diff) hover annotation to the current line annotation, which provides instant access to the line's previous version (optional, on by default)
Changes
will run the Compare File Revisions
command (gitlens.diffWith
)Show Commit Details
command (gitlens.showQuickCommitDetails
)Adds on-demand, beautiful, highly customizable and themable, Git blame annotations of the whole file
Choose between gutter
(default) and hover
annotation styles
Contains the commit message and date, by default
Adds a details
hover annotation to the line's annotation, which provides more commit details (optional, on by default)
Open Changes
, Blame Previous Revision
, Open in Remote
, and Show More Actions
command buttonsShow Commit Details
command (gitlens.showQuickCommitDetails
)Adds a changes
(diff) hover annotation to the line's annotation, which provides instant access to the line's previous version (optional, on by default)
Changes
will run the Compare File Revisions
command (gitlens.diffWith
)Show Commit Details
command (gitlens.showQuickCommitDetails
)Adds a heatmap
(age) indicator to the gutter annotations (on right edge by default), which provides an easy, at-a-glance way to tell the age of a line (optional, on by default)
Press Escape
to quickly toggle the annotations off
Adds customizable blame information about the current line to the status bar (optional, on by default)
Adds a Toggle File Blame Annotations
command (gitlens.toggleFileBlame
) with a shortcut of alt+b
to toggle the file blame annotations on and off
Show File Blame Annotations
command (gitlens.showFileBlame
)Adds a Toggle Line Blame Annotations
command (gitlens.toggleLineBlame
) to toggle the current line blame annotations on and off
Show Line Blame Annotations
command (gitlens.showLineBlame
)Adds on-demand heatmap annotations of the whole file
heatmap
(age) indicator near the gutter, which provides an easy, at-a-glance way to tell the age of a line
Escape
to quickly toggle the annotations offAdds Toggle File Heatmap Annotations
command (gitlens.toggleFileHeatmap
) to toggle the heatmap annotations on and off
Adds on-demand, customizable and themable, recent changes annotations of the whole file
details
hover annotation to each line, which provides more commit details (optional, on by default)
Show Commit Details
command (gitlens.showQuickCommitDetails
)changes
(diff) hover annotation to each line, which provides instant access to the line's previous version (optional, on by default)
Changes
will run the Compare File Revisions
command (gitlens.diffWith
)Show Commit Details
command (gitlens.showQuickCommitDetails
)Escape
to quickly toggle the annotations offAdds Toggle Recent File Changes Annotations
command (gitlens.toggleFileRecentChanges
) to toggle the recent changes annotations on and off
Adds code lens to the top of the file and on code blocks (optional, on by default)
Provides customizable click behavior for each code lens — choose between one of the following
Adds a Toggle Git Code Lens
command (gitlens.toggleCodeLens
) with a shortcut of shift+alt+b
to toggle the code lens on and off
Adds a customizable GitLens
view to the Explorer activity
Repository View
- provides a full repository explorer
Repository Status
node — provides the status of the repository
None
- up-to-date with the upstreamGreen
- ahead of the upstreamRed
- behind the upstreamYellow
- both ahead of and behind the upstreamChanged Files
node — provides a at-a-glance view of all "working" changes
Open Repository in Remote
, and Refresh
commandsBranches
node — provides a list of the local branches
None
- no upstream or up-to-date with the upstreamGreen
- ahead of the upstreamRed
- behind the upstreamYellow
- both ahead of and behind the upstreamOpen 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 Index (HEAD)
, Compare with Selected
, Select for Compare
, Rebase Commit (via Terminal)
, Reset Commit (via Terminal)
, and Refresh
commandsOpen 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
commandsOpen Branch in Remote
, Compare with Index (HEAD)
, Compare with Remote
, Compare with Selected
, Select for Compare
, Open Directory Compare with Working Tree
, Checkout Branch (via Terminal)
, Create Branch (via Terminal)...
, Delete Branch (via Terminal)
, Rebase Branch to Remote (via Terminal)
, Squash Branch into Commit (via Terminal)
, and Refresh
commandsOpen Branches in Remote
, and Refresh
commandsRemotes
node — provides a list of remotes
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 Index (HEAD)
, Compare with Selected
, Select for Compare
, and Refresh
commandsOpen 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
commandsOpen Branch in Remote
, Compare with Index (HEAD)
, Compare with Selected
, Select for Compare
, Open Directory Compare with Working Tree
, Checkout Branch (via Terminal)
, Create Branch (via Terminal)...
, Delete Branch (via Terminal)
, Squash Branch into Commit (via Terminal)
, and Refresh
commandsOpen Branches in Remote
, Open Repository in Remote
, Remove Remote (via Terminal)
, and Refresh
commandsRefresh
commandStashes
node — provides a list of stashed changes
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
, Compare with Index (HEAD)
, Compare with Selected
, Select for Compare
, and Refresh
commandsApply Changes
, Open Changes
, Open Changes with Working Tree
, Open File
, Open Revision
, Open File in Remote
, and Show File History
commandsStash Changes
, and Refresh
commandsTags
node — provides a list of tags
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 Index (HEAD)
, Compare with Selected
, Select for Compare
, Rebase Commit (via Terminal)
, Reset Commit (via Terminal)
, and Refresh
commandsOpen 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
commandsCompare with Index (HEAD)
, Compare with Selected
, Select for Compare
, Open Directory Compare with Working Tree
, and Refresh
commandsRefresh
commandHistory View
- provides the revision history of the active file
Open File
, Open File in Remote
, and Refresh
commandsOpen 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
commandsQuickly switch between views using the Switch to Repository View
or Switch to History View
commands
Provides toolbar commands to Search Commits
, Switch to Repository View
or Switch to History View
, and Refresh
Adds a Search Commits
command (gitlens.showCommitSearch
) with a shortcut of alt+/
to search for commits by message, author, file(s), commit id, or code changes
<message>
to search for commits with messages that match <message>
-- See Git docs@<pattern>
to search for commits with authors that match <pattern>
-- See Git docs:<pattern>
to search for commits with file names that match <pattern>
-- See Git docs#<sha>
to search for a commit with id of <sha>
-- See Git docs~<pattern>
to search for commits with differences whose patch text contains added/removed lines that match <pattern>
-- See Git docs=<string>
to search for commits with differences that change the number of occurrences of the specified string (i.e. addition/deletion) in a file -- See Git docsShow in Results
option to show the search results in the GitLens Results
viewAdds an on-demand, customizable GitLens Results
view to the Explorer activity
Provides semi-persistent results for commit search operations, via the Show Commit Search
command (gitlens.showCommitSearch
), file history operations, via the Show File History
command (gitlens.showQuickFileHistory
), and commit operations, via the Show Commit Details
command (gitlens.showQuickCommitDetails
)
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 Index (HEAD)
, Compare with Selected
, Select for Compare
, Rebase Commit (via Terminal)
, Reset Commit (via Terminal)
, and Refresh
commands
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
commandsProvides semi-persistent results for revision comparison operations, via the Compare with Index (HEAD)
command (gitlens.explorers.compareWithHead
), Compare with Remote
command (gitlens.explorers.compareWithRemote
), 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)
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 Index (HEAD)
, Compare with Selected
, Select for Compare
, Rebase Commit (via Terminal)
, Reset Commit (via Terminal)
, and Refresh
commands
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
commandsChanged Files
node — provides a list of all the files changed between the compared revisions (branches or commits)
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
commandsOpen Directory Compare
and Refresh
commandsProvides 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 commands to open files, commits, branches, and the repository in the supported remote services, BitBucket, GitHub, GitLab, and Visual Studio Team Services or a user-defined remote services — only available if a Git upstream service is configured in the repository
Open Branches in Remote
command (gitlens.openBranchesInRemote
) — opens the branches in the supported remote serviceOpen Branch in Remote
command (gitlens.openBranchInRemote
) — opens the current branch commits in the supported remote serviceOpen Commit in Remote
command (gitlens.openCommitInRemote
) — opens the commit revision of the active line in the supported remote serviceOpen File in Remote
command (gitlens.openFileInRemote
) — opens the active file/revision in the supported remote serviceOpen Repository in Remote
command (gitlens.openRepoInRemote
) — opens the repository in the supported remote serviceAdds a Show Current Branch History
command (gitlens.showQuickRepoHistory
) with a shortcut of shift+alt+h
to show a paged branch history quick pick menu of the current branch for exploring its commit history
Show Commit Search
and Open Branch in <remote-service>
when availablealt+left arrow
, if availablealt+,
and alt+.
to go backward and forward respectivelyAdds a Show Branch History
command (gitlens.showQuickBranchHistory
) to show a paged branch history quick pick menu of the selected branch for exploring its commit history
Show Current Branch History
aboveAdds a Show File History
command (gitlens.showQuickFileHistory
) to show a paged file history quick pick menu of the active file for exploring its commit history
Show in Results
, Show Branch History
, and Open File in <remote-service>
when availablealt+left arrow
, if availablealt+,
and alt+.
to go backward and forward respectivelyAdds a Show Commit Details
command (gitlens.showQuickCommitDetails
) to show a commit details quick pick menu of the most recent commit of the active file
Show in Results
, Open Commit in <remote-service>
when available, Open Files
, Open Revisions
, Open Directory Compare with Previous Revision
, Open Directory Compare with Working Tree
, Copy Commit ID to Clipboard
, Copy Commit Message to Clipboard
alt+left arrow
, if availablealt+right arrow
shortcut on an entry to execute it without closing the quick pick menu, if possible — commands that open windows outside of VS Code will still close the quick pick menu unless "gitlens.advanced.quickPick.closeOnFocusOut": false
is setalt+right arrow
shortcut on a file entry in the Changed Files
section to preview the comparison of the current revision with the previous oneAdds a Show Commit File Details
command (gitlens.showQuickCommitFileDetails
) with a shortcut of alt+c
to show a file commit details quick pick menu of the most recent commit of the active file
Open Changes
, Open Changes with Working Tree
, Open File
, Open Revision
, Open File in <remote-service>
when available, Open Revision in <remote-service>
when available, Copy Commit ID to Clipboard
, Copy Commit Message to Clipboard
, Show Commit Details
, Show File History
, and Show Previous File History
alt+left arrow
, if availablealt+right arrow
shortcut on an entry to execute it without closing the quick pick menu, if possible — commands that open windows outside of VS Code will still close the quick pick menu unless "gitlens.advanced.quickPick.closeOnFocusOut": false
is setAdds a Show Repository Status
command (gitlens.showQuickRepoStatus
) with a shortcut of alt+s
to show a repository status quick pick menu for visualizing the current repository status
Show Stashed Changes
, Open Changed Files
, and Close Unchanged Files
alt+right arrow
shortcut on an entry to execute it without closing the quick pick menu, if possible — commands that open windows outside of VS Code will still close the quick pick menu unless "gitlens.advanced.quickPick.closeOnFocusOut": false
is setalt+right arrow
shortcut on a file entry in the Staged Files
or Unstaged Files
sections to preview the comparison of the working file with the previous revisionAdds a Show Stashed Changes
command (gitlens.showQuickStashList
) to show a stashed changes quick pick menu for exploring your repository stash history
Provides additional entries to Stash Changes
Navigate back to the previous quick pick menu via alt+left arrow
, if available
Choosing a stash entry shows a stash details quick pick menu which is very similar to the commit details quick pick menu above
Apply Stashed Changes
(requires confirmation), Delete Stashed Changes
(requires confirmation), Open Files
, Open Revisions
, Open Directory Compare with Previous Revision
, Open Directory Compare with Working Tree
, Copy Commit Message to Clipboard
alt+left arrow
, if availablealt+right arrow
shortcut on an entry to execute it without closing the quick pick menu, if possible — commands that open windows outside of VS Code will still close the quick pick menu unless "gitlens.advanced.quickPick.closeOnFocusOut": false
is setalt+right arrow
shortcut on a file entry in the Changed Files
section to preview the comparison of the current revision with the previous oneAdds a Show Last Opened Quick Pick
command (gitlens.showLastQuickPick
) with a shortcut of alt+-
to quickly get back to where you were when the last GitLens quick pick menu closed
Effortlessly navigate between comparisons via the alt+,
and alt+.
shortcut keys to go back and forth through a file's revisions
Provides easy access to the following comparison commands via the Command Palette
as well as in context via the many provided quick pick menus
Adds a Directory Compare Working Tree with...
command (gitlens.diffDirectory
) to open the configured Git difftool to compare the working tree with the selected branch or tag
Adds a Compare File with Branch or Tag...
command (gitlens.diffWithBranch
) to compare the active file with the same file on the selected branch or tag
Adds a Compare File with Next Revision
command (gitlens.diffWithNext
) with a shortcut of alt+.
to compare the active file/diff with the next commit revision
Adds a Compare File with Previous Revision
command (gitlens.diffWithPrevious
) with a shortcut of alt+,
to compare the active file/diff with the previous commit revision
Adds a Compare Line Revision with Previous
command (gitlens.diffLineWithPrevious
) with a shortcut of shift+alt+,
to compare the active file/diff with the previous line commit revision
Adds a Compare File with Revision...
command (gitlens.diffWithRevision
) to compare the active file with the selected revision of the same file
Adds a Compare File with Working Revision
command (gitlens.diffWithWorking
) with a shortcut of shift+alt+w
to compare the most recent commit revision of the active file/diff with the working tree
Adds a Compare Line Revision with Working
command (gitlens.diffLineWithWorking
) with a shortcut of alt+w
to compare the commit revision of the active line with the working tree
Adds a Copy Commit ID to Clipboard
command (gitlens.copyShaToClipboard
) to copy the commit id (sha) of the active line to the clipboard or from the most recent commit to the current branch, if there is no active editor
Adds a Copy Commit Message to Clipboard
command (gitlens.copyMessageToClipboard
) to copy the commit message of the active line to the clipboard or from the most recent commit to the current branch, if there is no active editor
Adds a Open Working File"
command (gitlens.openWorkingFile
) to open the working file for the active file revision
Adds a Open Revision...
command (gitlens.openFileRevision
) to open the selected revision for the active file
Adds a Open Changes (with difftool)
command (gitlens.externalDiff
) to the source control group and source control resource context menus to open the changes of a file or set of files with the configured git difftool
Adds a Open All Changes (with difftool)
command (gitlens.externalDiffAll
) to open all working changes with the configured git difftool
Adds a Open Changed Files
command (gitlens.openChangedFiles
) to open any files with working tree changes
Adds a Close Unchanged Files
command (gitlens.closeUnchangedFiles
) to close any files without working tree changes
Adds a Apply Stashed Changes
command (gitlens.stashApply
) to chose a stash entry to apply to the working tree from a quick pick menu
Adds a Stash Changes
command (gitlens.stashSave
) to save any working tree changes to the stash — can optionally provide a stash message
Add "gitlens.insiders": true
to your settings to join the insiders channel and get early access to upcoming features. Be aware that because this provides early access expect there to be issues.
GitLens defines a set of themable colors which can be provided by vscode themes or directly by the user using workbench.colorCustomization
.
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 |
GitLens is highly customizable and provides many configuration settings to allow the personalization of almost all features
Name | Description |
---|---|
gitlens.defaultDateFormat |
Specifies how absolute dates will be formatted by default See https://momentjs.com/docs/#/displaying/format/ for valid formats |
gitlens.defaultDateStyle |
Specifies how dates will be displayed by default |
gitlens.insiders |
Opts into the insiders channel -- provides access to upcoming features |
gitlens.keymap |
Specifies the keymap to use for GitLens shortcut keysstandard - adds a standard set of shortcut keyschorded - adds a chorded set of shortcut keys that all start with Ctrl+Alt+G (⌥⌘G on macOS)none - no shortcut keys will be added |
gitlens.outputLevel |
Specifies how much (if any) output will be sent to the GitLens output channel |
Name | Description |
---|---|
gitlens.blame.ignoreWhitespace |
Specifies whether or not to ignore whitespace when comparing revisions during blame operations |
Name | Description |
---|---|
gitlens.blame.file.annotationType |
Specifies the type of blame annotations that will be shown for the current filegutter - adds an annotation to the beginning of each linehover - shows annotations when hovering over each line |
gitlens.blame.file.lineHighlight.enabled |
Specifies whether or not to highlight lines associated with the current line |
gitlens.blame.file.lineHighlight.locations |
Specifies where the associated line highlights will be showngutter - adds a gutter glyphline - adds a full-line highlight background coloroverviewRuler - adds a decoration to the overviewRuler (scroll bar) |
gitlens.annotations.file.gutter.format |
Specifies the format of the gutter blame annotations Available tokens ${id} - commit id${author} - commit author${message} - commit message${ago} - relative commit date (e.g. 1 day ago)${date} - formatted commit date (format specified by gitlens.annotations.file.gutter.dateFormat )${authorAgo} - commit author, relative commit dateSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting |
gitlens.annotations.file.gutter.dateFormat |
Specifies how to format absolute dates (using the ${date} token) in gutter blame annotationsSee https://momentjs.com/docs/#/displaying/format/ for valid formats |
gitlens.annotations.file.gutter.compact |
Specifies whether or not to compact (deduplicate) matching adjacent gutter blame annotations |
gitlens.annotations.file.gutter.heatmap.enabled |
Specifies whether or not to provide a heatmap indicator in the gutter blame annotations |
gitlens.annotations.file.gutter.heatmap.location |
Specifies where the heatmap indicators will be shown in the gutter blame annotationsleft - adds a heatmap indicator on the left edge of the gutter blame annotationsright - adds a heatmap indicator on the right edge of the gutter blame annotations |
gitlens.annotations.file.gutter.hover.details |
Specifies whether or not to provide a commit details hover annotation over the gutter blame annotations |
gitlens.annotations.file.gutter.hover.changes |
Specifies whether or not to provide a changes (diff) hover annotation over the gutter blame annotations |
gitlens.annotations.file.gutter.hover.wholeLine |
Specifies whether or not to trigger hover annotations over the whole line |
gitlens.annotations.file.gutter.separateLines |
Specifies whether or not gutter blame annotations will have line separators |
gitlens.annotations.file.hover.details |
Specifies whether or not to provide a commit details hover annotation over each line |
gitlens.annotations.file.hover.changes |
Specifies whether or not to provide a changes (diff) hover annotation over each line |
gitlens.annotations.file.hover.heatmap.enabled |
Specifies whether or not to provide heatmap indicators on the left edge of each line |
Name | Description |
---|---|
gitlens.blame.line.enabled |
Specifies whether or not 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 session |
gitlens.blame.line.annotationType |
Specifies the type of blame annotations that will be shown for the current linetrailing - adds an annotation to the end of the current linehover - shows annotations when hovering over the current line |
gitlens.annotations.line.trailing.format |
Specifies the format of the trailing blame annotations Available tokens ${id} - commit id${author} - commit author${message} - commit message${ago} - relative commit date (e.g. 1 day ago)${date} - formatted commit date (format specified by gitlens.annotations.line.trailing.dateFormat )${authorAgo} - commit author, relative commit dateSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting |
gitlens.annotations.line.trailing.dateFormat |
Specifies how to format absolute dates (using the ${date} token) in trailing blame annotationsSee https://momentjs.com/docs/#/displaying/format/ for valid formats |
gitlens.annotations.line.trailing.hover.details |
Specifies whether or not to provide a commit details hover annotation over the trailing blame annotations |
gitlens.annotations.line.trailing.hover.changes |
Specifies whether or not to provide a changes (diff) hover annotation over the trailing blame annotations |
gitlens.annotations.line.trailing.hover.wholeLine |
Specifies whether or not to trigger hover annotations over the whole line |
gitlens.annotations.line.hover.details |
Specifies whether or not to provide a commit details hover annotation for the current line |
gitlens.annotations.line.hover.changes |
Specifies whether or not to provide a changes (diff) hover annotation for the current line |
Name | Description |
---|---|
gitlens.recentChanges.file.lineHighlight.locations |
Specifies where the highlights of the recently changed lines will be showngutter - adds a gutter glyphline - adds a full-line highlight background coloroverviewRuler - adds a decoration to the overviewRuler (scroll bar) |
gitlens.annotations.file.recentChanges.hover.details |
Specifies whether or not to provide a commit details hover annotation |
gitlens.annotations.file.recentChanges.hover.changes |
Specifies whether or not to provide a changes (diff) hover annotation |
Name | Description |
---|---|
gitlens.codeLens.enabled |
Specifies whether or not to provide any Git code lens, by default Use the Toggle Git Code Lens command (gitlens.toggleCodeLens ) to toggle the Git code lens on and off for the current session |
gitlens.codeLens.recentChange.enabled |
Specifies whether or not to show a recent change code lens showing the author and date of the most recent commit for the file or code block |
gitlens.codeLens.recentChange.command |
Specifies the command to be executed when the recent change code lens is clickedgitlens.toggleFileBlame - toggles file blame annotationsgitlens.diffWithPrevious - compares the current committed file with the previous commitgitlens.showQuickCommitDetails - shows a commit details quick pickgitlens.showQuickCommitFileDetails - shows a commit file details quick pickgitlens.showQuickFileHistory - shows a file history quick pickgitlens.showQuickRepoHistory - shows a branch history quick pick |
gitlens.codeLens.authors.enabled |
Specifies whether or not to show an authors code lens showing number of authors of the file or code block and the most prominent author (if there is more than one) |
gitlens.codeLens.authors.command |
Specifies the command to be executed when the authors code lens is clickedgitlens.toggleFileBlame - toggles file blame annotationsgitlens.diffWithPrevious - compares the current committed file with the previous commitgitlens.showQuickCommitDetails - shows a commit details quick pickgitlens.showQuickCommitFileDetails - shows a commit file details quick pickgitlens.showQuickFileHistory - shows a file history quick pickgitlens.showQuickRepoHistory - shows a branch history quick pick |
gitlens.codeLens.locations |
Specifies where Git code lens will be shown in the documentdocument - adds code lens at the top of the documentcontainers - adds code lens at the start of container-like symbols (modules, classes, interfaces, etc)blocks - adds code lens at the start of block-like symbols (functions, methods, etc) lines |
gitlens.codeLens.customLocationSymbols |
Specifies a set of document symbols where Git code lens will or will not be shown in the document Prefix with ! to not show Git code lens for the symbolMust be a member of SymbolKind |
gitlens.codeLens.perLanguageLocations |
Specifies where Git code lens will be shown in the document for the specified languages |
Name | Description |
---|---|
gitlens.gitExplorer.enabled |
Specifies whether or not to show the GitLens view" |
gitlens.gitExplorer.view |
Specifies the starting view (mode) of the GitLens viewauto - shows the last selected view, defaults to repository history - shows the commit history of the active filerepository - shows a repository explorer" |
gitlens.gitExplorer.autoRefresh |
Specifies whether or not to automatically refresh the GitLens view when the repository or the file system changes |
gitlens.gitExplorer.files.layout |
Specifies how the GitLens view will display filesauto - 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 levellist - displays files as a listtree - displays files as a tree |
gitlens.gitExplorer.files.compact |
Specifies whether or not to compact (flatten) unnecessary file nesting in the GitLens viewOnly applies when displaying files as a tree or auto |
gitlens.gitExplorer.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 GitLens viewOnly applies when displaying files as auto |
gitlens.gitExplorer.commitFormat |
Specifies the format of committed changes in the GitLens viewAvailable tokens ${id} - commit id ${author} - commit author ${message} - commit message ${ago} - relative commit date (e.g. 1 day ago) ${date} - formatted commit date (format specified by gitlens.statusBar.dateFormat )${authorAgo} - commit author, relative commit date See https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting |
gitlens.gitExplorer.commitFileFormat |
Specifies the format of a committed file in the GitLens viewAvailable tokens ${directory} - directory name ${file} - file name ${filePath} - formatted file name and path ${path} - full file path |
gitlens.gitExplorer.gravatars |
Specifies whether or not to show gravatar images instead of commit (or status) icons in the GitLens view |
gitlens.gitExplorer.gravatarsDefault |
Specifies the style of the gravatar default (fallback) images in the GitLens viewidenticon - a geometric patternmm - (mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash)monsterid - a monster with different colors, faces, etcretro - 8-bit arcade-style pixelated facesrobohash - a robot with different colors, faces, etcwavatar - faces with differing features and backgrounds |
gitlens.gitExplorer.includeWorkingTree |
Specifies whether or not to include working tree files inside the Repository Status node of the GitLens view |
gitlens.gitExplorer.showTrackingBranch |
Specifies whether or not to show the tracking branch when displaying local branches in the GitLens view" |
gitlens.gitExplorer.stashFormat |
Specifies the format of stashed changes in the GitLens viewAvailable tokens ${id} - commit id ${author} - commit author ${message} - commit message ${ago} - relative commit date (e.g. 1 day ago) ${date} - formatted commit date (format specified by gitlens.statusBar.dateFormat )${authorAgo} - commit author, relative commit date See https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting |
gitlens.gitExplorer.stashFileFormat |
Specifies the format of a stashed file in the GitLens viewAvailable tokens ${directory} - directory name ${file} - file name ${filePath} - formatted file name and path ${path} - full file path |
gitlens.gitExplorer.statusFileFormat |
Specifies the format of the status of a working or committed file in the GitLens viewAvailable tokens ${directory} - directory name ${file} - file name ${filePath} - formatted file name and path ${path} - full file path ${working} - optional indicator if the file is uncommitted |
Name | Description |
---|---|
gitlens.resultsExplorer.files.layout |
Specifies how the GitLens Results view will display filesauto - automatically switches between displaying files as a tree or list based on the gitlens.resultsExplorer.files.threshold setting and the number of files at each nesting levellist - displays files as a listtree - displays files as a tree |
gitlens.resultsExplorer.files.compact |
Specifies whether or not to compact (flatten) unnecessary file nesting in the GitLens Results viewOnly applies when displaying files as a tree or auto |
gitlens.resultsExplorer.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 GitLens Results viewOnly applies when displaying files as auto |
gitlens.resultsExplorer.commitFormat |
Specifies the format of committed changes in the GitLens Results viewAvailable tokens ${id} - commit id ${author} - commit author ${message} - commit message ${ago} - relative commit date (e.g. 1 day ago) ${date} - formatted commit date (format specified by gitlens.statusBar.dateFormat )${authorAgo} - commit author, relative commit date See https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting |
gitlens.resultsExplorer.commitFileFormat |
Specifies the format of a committed file in the GitLens Results viewAvailable tokens ${directory} - directory name ${file} - file name ${filePath} - formatted file name and path ${path} - full file path |
gitlens.resultsExplorer.gravatars |
Specifies whether or not to show gravatar images instead of commit (or status) icons in the GitLens Results view |
gitlens.resultsExplorer.gravatarsDefault |
Specifies the style of the gravatar default (fallback) images in the GitLens Results viewidenticon - a geometric patternmm - (mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash)monsterid - a monster with different colors, faces, etcretro - 8-bit arcade-style pixelated facesrobohash - a robot with different colors, faces, etcwavatar - faces with differing features and backgrounds |
gitlens.resultsExplorer.showTrackingBranch |
Specifies whether or not to show the tracking branch when displaying local branches in the GitLens Results view" |
gitlens.resultsExplorer.stashFormat |
Specifies the format of stashed changes in the GitLens Results viewAvailable tokens ${id} - commit id ${author} - commit author ${message} - commit message ${ago} - relative commit date (e.g. 1 day ago) ${date} - formatted commit date (format specified by gitlens.statusBar.dateFormat )${authorAgo} - commit author, relative commit date See https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting |
gitlens.resultsExplorer.stashFileFormat |
Specifies the format of a stashed file in the GitLens Results viewAvailable tokens ${directory} - directory name ${file} - file name ${filePath} - formatted file name and path ${path} - full file path |
gitlens.resultsExplorer.statusFileFormat |
Specifies the format of the status of a working or committed file in the GitLens Results viewAvailable tokens ${directory} - directory name ${file} - file name ${filePath} - formatted file name and path ${path} - full file path ${working} - optional indicator if the file is uncommitted |
Name | Description |
---|---|
gitlens.remotes |
Specifies user-defined remote (code-hosting) services or custom domains for built-in remote services Example: "gitlens.remotes": [{ "domain": "git.corporate-url.com", "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}" } } |
Name | Description |
---|---|
gitlens.statusBar.enabled |
Specifies whether or not to provide blame information on the status bar |
gitlens.statusBar.alignment |
Specifies the blame alignment in the status barleft - align to the left, right - align to the right |
gitlens.statusBar.command |
Specifies the command to be executed when the blame status bar item is clickedgitlens.toggleFileBlame - toggles file blame annotationsgitlens.diffWithPrevious - compares the current line commit with the previousgitlens.diffWithWorking - compares the current line commit with the working treegitlens.toggleCodeLens - toggles Git code lensgitlens.showQuickCommitDetails - shows a commit details quick pickgitlens.showQuickCommitFileDetails - shows a commit file details quick pickgitlens.showQuickFileHistory - shows a file history quick pickgitlens.showQuickRepoHistory - shows a branch history quick pick |
gitlens.statusBar.format |
Specifies the format of the blame information on the status bar Available tokens ${id} - commit id${author} - commit author${message} - commit message${ago} - relative commit date (e.g. 1 day ago)${date} - formatted commit date (format specified by gitlens.statusBar.dateFormat )See https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting |
gitlens.statusBar.dateFormat |
Specifies the date format of absolute dates shown in the blame information on the status bar See https://momentjs.com/docs/#/displaying/format/ for valid formats |
Name | Description |
---|---|
gitlens.strings.codeLens.unsavedChanges.recentChangeAndAuthors |
Specifies the string to be shown in place of both the recent change and authors code lens when there are unsaved changes |
gitlens.strings.codeLens.unsavedChanges.recentChangeOnly |
Specifies the string to be shown in place of the recent change code lens when there are unsaved changes |
gitlens.strings.codeLens.unsavedChanges.authorsOnly |
Specifies the string to be shown in place of the authors code lens when there are unsaved changes |
Name | Description |
---|---|
gitlens.advanced.telemetry.enabled |
Specifies whether or not to enable GitLens telemetry (even if enabled still abides by the overall telemetry.enableTelemetry setting |
gitlens.advanced.git |
Specifies the git path to use |
gitlens.advanced.repositorySearchDepth |
Specifies how many folders deep to search for repositories |
gitlens.advanced.menus |
Specifies which commands will be added to which menus |
gitlens.advanced.messages |
Specifies which messages should be suppressed |
gitlens.advanced.caching.enabled |
Specifies whether git output will be cached |
gitlens.advanced.caching.maxLines |
Specifies the threshold for caching larger documents |
gitlens.advanced.maxQuickHistory |
Specifies the maximum number of QuickPick history entries to show |
gitlens.advanced.quickPick.closeOnFocusOut |
Specifies whether or not to close the QuickPick menu when focus is lost |
Copy to * clipboard
commands don't work on Linux -- xclip
needs to be installed. You can install it via sudo apt-get install xclip
A big thanks to the people that have contributed to this project:
Also special thanks to the people that have provided support, testing, brainstorming, etc:
And of course the awesome vscode team!