diff --git a/_images/gl-17-7-recompose-branch-01-v2@2x.png b/_images/gl-17-7-recompose-branch-01-v2@2x.png new file mode 100644 index 0000000..6559e52 Binary files /dev/null and b/_images/gl-17-7-recompose-branch-01-v2@2x.png differ diff --git a/_images/gl-17-8-compose-in-wip-01-v3@2x.png b/_images/gl-17-8-compose-in-wip-01-v3@2x.png new file mode 100644 index 0000000..fd32a01 Binary files /dev/null and b/_images/gl-17-8-compose-in-wip-01-v3@2x.png differ diff --git a/_images/gl-17-8-recompose-selected-commits-01-v3@2x.png b/_images/gl-17-8-recompose-selected-commits-01-v3@2x.png new file mode 100644 index 0000000..6559e52 Binary files /dev/null and b/_images/gl-17-8-recompose-selected-commits-01-v3@2x.png differ diff --git a/_images/gl-access-composer-1-17-4-01-v2@2x.png b/_images/gl-access-composer-1-17-4-01-v2@2x.png new file mode 100644 index 0000000..6559e52 Binary files /dev/null and b/_images/gl-access-composer-1-17-4-01-v2@2x.png differ diff --git a/_images/gl-access-composer-2-17-4-01-v2@2x.png b/_images/gl-access-composer-2-17-4-01-v2@2x.png new file mode 100644 index 0000000..fd32a01 Binary files /dev/null and b/_images/gl-access-composer-2-17-4-01-v2@2x.png differ diff --git a/_images/gl-access-launchpad-01-v2@2x.gif b/_images/gl-access-launchpad-01-v2@2x.gif new file mode 100644 index 0000000..0ce1289 Binary files /dev/null and b/_images/gl-access-launchpad-01-v2@2x.gif differ diff --git a/_images/gl-ai-branch-summary-01-v2@2x.png b/_images/gl-ai-branch-summary-01-v2@2x.png new file mode 100644 index 0000000..72fff4e Binary files /dev/null and b/_images/gl-ai-branch-summary-01-v2@2x.png differ diff --git a/_images/gl-ai-generated-commit-message-01-v2@2x.gif b/_images/gl-ai-generated-commit-message-01-v2@2x.gif new file mode 100644 index 0000000..7175e5b Binary files /dev/null and b/_images/gl-ai-generated-commit-message-01-v2@2x.gif differ diff --git a/_images/gl-autolinks-01-v2@2x.png b/_images/gl-autolinks-01-v2@2x.png new file mode 100644 index 0000000..9aac27e Binary files /dev/null and b/_images/gl-autolinks-01-v2@2x.png differ diff --git a/_images/gl-cloud-integrations-01-v2@2x.png b/_images/gl-cloud-integrations-01-v2@2x.png new file mode 100644 index 0000000..0ce1289 Binary files /dev/null and b/_images/gl-cloud-integrations-01-v2@2x.png differ diff --git a/_images/gl-code-lens-01-v2@2x.png b/_images/gl-code-lens-01-v2@2x.png new file mode 100644 index 0000000..4500c39 Binary files /dev/null and b/_images/gl-code-lens-01-v2@2x.png differ diff --git a/_images/gl-commit-composer-17-4-01-v4@2x.png b/_images/gl-commit-composer-17-4-01-v4@2x.png new file mode 100644 index 0000000..33a054f Binary files /dev/null and b/_images/gl-commit-composer-17-4-01-v4@2x.png differ diff --git a/_images/gl-commit-composer-composed-17-4-01-v5@2x.png b/_images/gl-commit-composer-composed-17-4-01-v5@2x.png new file mode 100644 index 0000000..ae95d33 Binary files /dev/null and b/_images/gl-commit-composer-composed-17-4-01-v5@2x.png differ diff --git a/_images/gl-commit-graph-01-v2@2x.png b/_images/gl-commit-graph-01-v2@2x.png new file mode 100644 index 0000000..6559e52 Binary files /dev/null and b/_images/gl-commit-graph-01-v2@2x.png differ diff --git a/_images/gl-commit-graph-settings-01-v2@2x.png b/_images/gl-commit-graph-settings-01-v2@2x.png new file mode 100644 index 0000000..9955fa1 Binary files /dev/null and b/_images/gl-commit-graph-settings-01-v2@2x.png differ diff --git a/_images/gl-commit-search-moving-arrow-keys-02-v2@2x.gif b/_images/gl-commit-search-moving-arrow-keys-02-v2@2x.gif new file mode 100644 index 0000000..a99db44 Binary files /dev/null and b/_images/gl-commit-search-moving-arrow-keys-02-v2@2x.gif differ diff --git a/_images/gl-current-line-blame-01-v2@2x.png b/_images/gl-current-line-blame-01-v2@2x.png new file mode 100644 index 0000000..4500c39 Binary files /dev/null and b/_images/gl-current-line-blame-01-v2@2x.png differ diff --git a/_images/gl-enable-debug-log-01-v2@2x.png b/_images/gl-enable-debug-log-01-v2@2x.png new file mode 100644 index 0000000..099b6c8 Binary files /dev/null and b/_images/gl-enable-debug-log-01-v2@2x.png differ diff --git a/_images/gl-export-logs-01-v2@2x.png b/_images/gl-export-logs-01-v2@2x.png new file mode 100644 index 0000000..1d43783 Binary files /dev/null and b/_images/gl-export-logs-01-v2@2x.png differ diff --git a/_images/gl-filter-options-2-01-v2@2x.png b/_images/gl-filter-options-2-01-v2@2x.png new file mode 100644 index 0000000..226a920 Binary files /dev/null and b/_images/gl-filter-options-2-01-v2@2x.png differ diff --git a/_images/gl-git-command-palette-01-v2@2x.png b/_images/gl-git-command-palette-01-v2@2x.png new file mode 100644 index 0000000..44bcc17 Binary files /dev/null and b/_images/gl-git-command-palette-01-v2@2x.png differ diff --git a/_images/gl-gitlab-github-integration-01-v2@2x.png b/_images/gl-gitlab-github-integration-01-v2@2x.png new file mode 100644 index 0000000..607990b Binary files /dev/null and b/_images/gl-gitlab-github-integration-01-v2@2x.png differ diff --git a/_images/gl-output-01-v2@2x.png b/_images/gl-output-01-v2@2x.png new file mode 100644 index 0000000..c1b8f41 Binary files /dev/null and b/_images/gl-output-01-v2@2x.png differ diff --git a/_images/gl-proxy-settings-01-v2@2x.png b/_images/gl-proxy-settings-01-v2@2x.png new file mode 100644 index 0000000..d1faf2b Binary files /dev/null and b/_images/gl-proxy-settings-01-v2@2x.png differ diff --git a/_images/gl-rich-commit-search-02-v2@2x.png b/_images/gl-rich-commit-search-02-v2@2x.png new file mode 100644 index 0000000..11e4310 Binary files /dev/null and b/_images/gl-rich-commit-search-02-v2@2x.png differ diff --git a/_images/gl-search-options-01-v2@2x.png b/_images/gl-search-options-01-v2@2x.png new file mode 100644 index 0000000..c263af1 Binary files /dev/null and b/_images/gl-search-options-01-v2@2x.png differ diff --git a/_images/gl-settings-01-v2@2x.png b/_images/gl-settings-01-v2@2x.png new file mode 100644 index 0000000..8c34b33 Binary files /dev/null and b/_images/gl-settings-01-v2@2x.png differ diff --git a/_images/gl-sign-in-4-01-v2@2x.png b/_images/gl-sign-in-4-01-v2@2x.png new file mode 100644 index 0000000..774755f Binary files /dev/null and b/_images/gl-sign-in-4-01-v2@2x.png differ diff --git a/_images/gl-sign-in-ls-update-01-v2@2x.png b/_images/gl-sign-in-ls-update-01-v2@2x.png new file mode 100644 index 0000000..5dd1130 Binary files /dev/null and b/_images/gl-sign-in-ls-update-01-v2@2x.png differ diff --git a/_images/gl-sign-out-4-01-v2@2x.png b/_images/gl-sign-out-4-01-v2@2x.png new file mode 100644 index 0000000..9667adf Binary files /dev/null and b/_images/gl-sign-out-4-01-v2@2x.png differ diff --git a/_images/gl-sign-out-ls-update-01-v2@2x.png b/_images/gl-sign-out-ls-update-01-v2@2x.png new file mode 100644 index 0000000..ce9406b Binary files /dev/null and b/_images/gl-sign-out-ls-update-01-v2@2x.png differ diff --git a/gitlens/GL-Commit-Graph.md b/gitlens/GL-Commit-Graph.md index 37acf81..95eaac8 100644 --- a/gitlens/GL-Commit-Graph.md +++ b/gitlens/GL-Commit-Graph.md @@ -10,10 +10,10 @@ taxonomy: ## Commit Graph PRO -The GitLens Commit Graph provides an interactive view of your repository history. It shows commits, branches, and collaborators in one place, helping you understand contributions and make faster decisions. +The GitLens Commit Graph is the main view in the GitLens sidebar, providing an interactive visualization of your repository history. Built on a high-performance rendering engine, it shows commits, branches, and collaborators in one place, helping you understand contributions and make faster decisions.
- Commit Graph in GitLens showing branches and commits + Commit Graph in GitLens showing branches and commits
Commit Graph overview in GitLens
@@ -21,6 +21,9 @@ The GitLens Commit Graph provides an interactive view of your repository history ### Open the Commit Graph +The Commit Graph is the leading view in the GitLens sidebar. Click the GitLens icon in the Activity Bar to open it directly. + +You can also open it from the Command Palette: 1. Open the Command Palette: - macOS: Cmd + Shift + P - Windows/Linux: Ctrl + Shift + P @@ -43,6 +46,8 @@ At the top of the Commit Graph, you’ll see: - **Checked-out branch** (click to switch branches) - **Last fetched time** (click **Fetch** to update) +You can enable automatic fetching with the `gitlens.graph.autoFetch` setting. When enabled, GitLens periodically runs `git fetch` for repositories visible in the Commit Graph, keeping your view up to date without manual refreshes. +
Repository details in the Commit Graph toolbar
Repository details in the Commit Graph toolbar
@@ -61,18 +66,112 @@ At the top of the Commit Graph, you’ll see: We’d love your input! Share ideas and feedback in the [GitLens Commit Graph discussion on GitHub](https://github.com/gitkraken/vscode-gitlens/discussions/2158). +--- + +### Graph Sidebar + +The Commit Graph includes an expandable sidebar panel that provides quick access to your repository refs. The sidebar lists branches, remotes, stashes, tags, and worktrees in both list and tree views. Click the sidebar toggle to expand or collapse it, or use the `gitlens.graph.sidebar.pinned` setting to keep it pinned open. + +The sidebar contains several panels: + +- **Overview**: Displays branch cards with WIP stats and upstream tracking information at a glance. +- **Focus Branch**: Scopes the graph to a single branch, filtering out unrelated history. +- **Agent Branches**: Filters branches to show only those associated with AI agent sessions. +- **Agent Sessions**: A Kanban-style panel for monitoring and managing active agent sessions. Branches with running agent sessions display status pills directly in the graph, so you can track agent activity at a glance. + +
+ The Commit Graph with the sidebar panel expanded, showing branches, remotes, stashes, tags, and worktrees in a tree view +
The Commit Graph sidebar with branches, remotes, and worktrees
+
+ +#### Detail Sheets + +Clicking on a branch, pull request, or comparison in the sidebar opens a slide-out detail sheet with rich information: + +- **Branch sheet**: Shows branch details, tracking status, and recent commits. +- **Pull request sheet**: Displays PR description, reviewers, status checks, and stacked PR information when applicable. +- **Compare sheet**: Shows file-level comparison between branches or commits, with a pinned mode to keep the comparison visible while navigating. +- **Rebase summary sheet**: Appears after a rebase operation, summarizing what changed. +- **WIP conflict sheet**: Surfaces during conflict resolution to help resolve working changes. + +--- + +### Overview Bar + +The overview bar is a horizontal strip displayed above the graph showing one pill per worktree. Each pill indicates the branch's WIP status, and hovering reveals additional details. The `gitlens.graph.overviewBar.visibility` setting controls when the overview bar is shown. + +#### Ref Find + +The ref-finder widget provides a typeahead search for quickly jumping to any branch, tag, or WIP row in the graph. The `gitlens.graph.refFindAutoHide` setting controls whether the widget auto-hides after selecting a result. + +--- + +### WIP Bar + +The Commit Graph displays a WIP bar at the top of the graph with one pill per worktree. Each pill shows the branch name, a dirty indicator when there are uncommitted changes, an unpushed arrow with ahead count when commits have not been pushed, and changed file counts on hover. Clicking a pill scrolls the graph to that worktree's WIP row. + +
+ The Commit Graph WIP bar showing worktree pills with branch name and dirty indicator for uncommitted changes +
WIP bar with worktree pills above the graph
+
+ +--- + +### Details Panel + +The Commit Graph includes an embedded details panel that shows information about the selected commit or your current working changes. The details panel replaces the former standalone Graph Details view and is integrated directly within the graph. + +When you select a commit, the details panel displays the commit message, author, changed files, and diff. When viewing working changes, it shows your uncommitted modifications. The panel can be positioned to the right or bottom of the graph using the `gitlens.graph.details.location` setting. An `auto` option is also available, which switches between right and bottom placement based on the graph width. The `gitlens.graph.details.maximizeOnMode` setting automatically maximizes the details panel when entering compose, review, or resolve modes. + +The details panel supports multiple modes: + +- **Compare mode**: Opens comparisons directly within the graph, showing Ahead, Behind, and All views between branches or commits. This replaces navigating to the standalone Search and Compare view for graph comparisons. +- **Compose mode**: Provides an integrated commit composition experience, letting you craft commit messages and select files to commit without leaving the graph. You can also access Compose from the graph context menu. +- **Recompose**: Restructures the commit history on a branch using AI. Available from the graph context menu, Recompose can operate on an entire branch, from a specific commit, or on selected commits. It analyzes your changes and reorganizes them into cleaner, more logical commits. +- **Review mode**: Uses AI to analyze commits or working changes and surfaces severity-tagged insights such as potential bugs, security issues, or style concerns. You can configure separate AI models for compose and review using per-feature model scoping, and customize review behavior with the `gitlens.ai.reviewChanges.customInstructions` setting. + +
+ The Commit Graph with the embedded details panel on the right, showing commit message, author, and changed files for the selected commit +
Embedded details panel showing commit information
+
+ +#### Multi-file Selection + +File lists in the details panel (WIP, commit details, compare, compose, and review panels) support multi-file selection using Shift-click and Ctrl/Cmd-click. With multiple files selected, you can perform batch operations including stage, unstage, discard changes, and stash. Individual files also show inline action buttons for quick single-file operations. + +#### Co-authors + +When composing a commit in the graph, use the **Add Co-authors** button to append `Co-authored-by` trailers to your commit message. + +#### Navigation and Keyboard Shortcuts + +The details panel includes back and forward navigation buttons for browsing through previously viewed commits. A keyboard shortcuts reference dialog is available listing all graph shortcuts organized by category. + +--- ### Configuration and Layout You can configure the Commit Graph to control what information is shown and how it is displayed. +#### Graph Style + +The `gitlens.graph.style` setting controls the overall row layout of the graph. Options include `table` (columnar layout with visible borders), `list` (compact list layout), and `auto` (switches based on available width). + #### Columns - Drag and drop column headers to rearrange columns. - Right-click a column header to toggle columns on or off. -- The **Changes** column shows added lines in green and deleted lines in red. +- The **Changes** column visualizes added and deleted lines per commit. The `gitlens.graph.changesColumn.mode` setting controls the display style: `numbers` (numeric counts), `squares` (colored blocks), `bar` (horizontal bar), or `bipolar` (split additions/deletions bar). +- **Column grouping** is enabled by default, combining the Graph and Branches/Tags columns into a compact layout. Lanes can be folded to collapse inactive branches and reduce visual clutter. + +#### Lane Colors and Row Markers + +The graph uses perceptually-uniform lane colors that are tuned for both dark and high-contrast themes. Row markers indicate important commits at a glance: +- **Green marker**: HEAD commit +- **Blue marker**: upstream tracking commit +- **Colored reference pills**: merge target and other branch roles
- Commit Graph column settings menu showing toggle options + Commit Graph column settings menu showing toggle options
Commit Graph column settings
@@ -85,6 +184,8 @@ To switch layouts: 1. Select the settings gear in the top-right corner of the Commit Graph editor. 2. Choose **Prefer Commit Graph in Panel Layout** or **Prefer Commit Graph in Editor Area**. +The `gitlens.graph.editorOpeningBehavior` setting controls how files open from the graph — either in the active editor group or automatically based on context. You can also open the Commit Graph in a separate VS Code window using the **GitLens: Open Commit Graph in New Window** command. +
Commit Graph layout preference menu
Switching between Editor and Panel Layout
@@ -105,9 +206,12 @@ Scroll markers highlight key points in the Commit Graph, including: - Checked-out branches - Selected rows - Search results +- Work-in-progress (WIP) rows Use scroll markers to quickly jump to important points such as `HEAD` or refs. You can toggle this feature in the [Commit Graph settings](/gitlens/gitlens-features/#settings). +The `gitlens.graph.showWorktreeWipStats` setting displays file add/change/delete statistics on worktree WIP rows. The `gitlens.graph.minimap.reversed` setting reverses the minimap direction. +
Commit Graph scroll markers indicating branch and search results
Scroll markers in the Commit Graph
@@ -124,10 +228,14 @@ Adjust Commit Graph settings from the Command Palette: Search for **GitLens: Open Settings**.
- Commit Graph settings in VS Code + Commit Graph settings in VS Code
Opening Commit Graph settings
+
+

Note: The gitlens.graph.showDetailsView setting and the standalone Graph Details view have been removed. The details panel is now always embedded in the Commit Graph. The gitlens.proxy setting has also been removed.

+
+ --- ### Rich Commit Search @@ -141,7 +249,7 @@ The Commit Graph supports rich search across your entire repository. You can sea - Previous result: Shift + F3 (Windows/Linux) or Shift + Cmd + G (macOS)
- Commit Graph search bar highlighting results + Commit Graph search bar highlighting results
Searching commits in the Commit Graph
@@ -149,7 +257,7 @@ You can also: - Jump to the **first or last result** by holding Shift while clicking the arrow icons.
- Navigating commit search results with arrow keys + Navigating commit search results with arrow keys
Navigating commit search results
@@ -162,13 +270,15 @@ Use these filters in the search bar: - `Change:` - `@me` +You can also use **natural language search** to describe what you are looking for in plain English. GitLens uses AI to convert your query into the appropriate structured search operators. Time-based operators such as `after:` and `before:` are available for filtering commits by date. + Additional options: - Match all - Match case - Use regular expressions
- Commit Graph search options for case sensitivity and regex + Commit Graph search options for case sensitivity and regex
Commit Graph search options
@@ -185,6 +295,25 @@ Helpful context menu actions include: - **Compare with Common Base**: Review changes that would occur if the selected branch were merged by comparing its common ancestor (merge base) with the current branch. - **Open All Changes with Common Base**: Review all merge changes in the multi-diff editor. +- **Squash Commits**: Squash selected commits into one without opening the rebase editor. +- **Drop Commits**: Remove selected commits from history. +- **Reword Commit**: Change a commit message in place. +- **Modify Commit**: Amend a commit's contents. +- **Undo Commit**: Appears as an inline action on HEAD commit rows, soft-resetting the commit to return changes to the working tree. +- **Push to Commit**: Appears as an inline cloud-upload icon on unpushed commit rows, pushing all commits up to and including the selected one. + +--- + +### AI Auto Rebase PRO + +AI Auto Rebase automatically resolves conflicts during a rebase operation. When conflicts arise, GitLens uses AI to analyze and resolve them end-to-end based on a configurable confidence threshold. + +- Run **GitLens: AI Auto Rebase** from the Command Palette or the graph context menu. +- The `gitlens.ai.autoRebase.confidenceThreshold` setting (0 to 1) controls how confident the AI must be before automatically applying a resolution. +- Use `gitlens.ai.resolveConflicts.customInstructions` to provide custom instructions that guide how the AI resolves conflicts. +- If the result is unsatisfactory, use **GitLens: Undo AI Auto Rebase** to revert to the pre-rebase state. + +During the rebase, a progress animation appears in the graph to indicate the operation is in progress. A rebase summary sheet opens in the sidebar when the operation completes. --- @@ -192,6 +321,8 @@ Helpful context menu actions include: For GitHub and GitLab, the Commit Graph displays a Pull Request icon for any branch with an open pull request. To enable this, connect a [rich integration](/gitlens/settings/#remote-provider-integration-settings). +For GitHub repositories, the graph also recognizes **stacked pull requests**. When a branch is part of a PR stack, the PR sheet in the sidebar shows the stack ID, the total number of PRs in the stack, and the current PR's position. Merge operations are stack-aware, distinguishing between merging a single layer and merging the entire stack. +
Commit Graph branch showing pull request icon
Pull request icon in Commit Graph
@@ -223,19 +354,20 @@ Additional options let you hide or show: You can also dim merge commit rows for clarity.
- Commit Graph filter options for branches, tags, and stashes + Commit Graph filter options for branches, tags, and stashes
Commit Graph filter options
--- -### Minimap (Experimental) +### Minimap The Minimap provides a high-level overview of repository activity. It shows commits, branches, HEAD/upstream, and more, letting you quickly jump to points of interest. - Select the **Toggle Minimap** icon in the Commit Graph toolbar to enable or disable it. - Use the graph icon dropdown to switch between **Commits** or **Lines Changed** views. - Toggle markers on or off from the same menu. +- The `gitlens.graph.minimap.defaultVisibility` setting controls when the minimap appears: `hidden`, `onSearch` (default, shows during search), or `always`.
Commit Graph Minimap enabled in the toolbar @@ -243,7 +375,7 @@ The Minimap provides a high-level overview of repository activity. It shows comm
- Commit Graph Minimap settings with commits or lines changed options + Commit Graph Minimap settings with commits or lines changed options
Minimap settings and options
diff --git a/gitlens/GL-GK-AI.md b/gitlens/GL-GK-AI.md index 115227b..4984e7c 100644 --- a/gitlens/GL-GK-AI.md +++ b/gitlens/GL-GK-AI.md @@ -20,8 +20,12 @@ GitLens integrates powerful AI capabilities across different subscription tiers, Generate clear, descriptive commit messages based on your code changes, saving time and ensuring consistency across your repository. The AI analyzes your staged changes and creates meaningful messages that accurately describe what you've modified. +In addition to single commit messages, GitLens offers AI Generate Commits, which creates multiple logical commits from your working tree changes, and AI Rebase, which restructures an existing branch onto a target commit with AI-generated commits. Both commands include undo support and first-time confirmation dialogs. + **How to access:** - From the Command Palette: `GitLens: Generate Commit Message with AI` +- From the Command Palette: `GitLens: Generate Commits with AI` (creates multiple commits from working changes) +- From the Command Palette: `GitLens: AI Rebase` (restructures branch commits) - From the SCM panel: Click the "Generate Commit Message" button - During the commit process: Look for the AI option in the commit interface @@ -53,8 +57,9 @@ Understand the reasoning behind changes with AI-generated explanations of commit ### AI Changes Explain `Preview` -Gitkraken AI can also be used to generate summaries in Branches, Working changes, and Stashes. +Gitkraken AI can also be used to generate summaries for Commits, Branches, Working Changes, and Stashes. +What a specific commit introduced – ✨Explain Commit What changed across all commits in a branch – ✨Explain Branch What you’ve modified in your working directory – ✨Explain Working Changes What you’ve previously stashed – ✨Explain Stash @@ -64,6 +69,7 @@ You’ll find ✨Explain options for commits, branches, stashes, and working cha - In the Commit Graph - Available as commands in the command palette - In many GitLens views: Commits, Branches, Stashes, Search & Compare, etc. +- In editor blame hovers via the ✨Explain button ### AI Changelog Creation `Pro` **Available in:** Advanced and Business plans only @@ -87,6 +93,43 @@ Open Pull Requests: Automatically generate clear PR titles and descriptions dire +### AI Review `Pro` +**Available in:** Pro, Advanced, and Business plans + +Review commits and working changes with AI-powered analysis that surfaces severity-tagged insights directly in the Commit Graph details panel. AI Review identifies potential issues, highlights notable patterns, and provides actionable feedback on your changes. + +**How to access:** +- In the Commit Graph: Select a commit or working changes, then open the Review mode in the details panel +- Customize review behavior with the `gitlens.ai.reviewChanges.customInstructions` setting + +You can configure separate AI models for different features (such as compose and review) to optimize for your preferred balance of speed and quality. + +### AI Auto Rebase `Pro` +**Available in:** Pro, Advanced, and Business plans + +Automate rebasing with AI-assisted conflict resolution. AI Auto Rebase handles the end-to-end rebase process, automatically resolving conflicts based on a configurable confidence threshold. A rebase summary sheet shows what was resolved and how, and full undo support lets you revert the operation if needed. + +**How to access:** +- From the Command Palette: `GitLens: AI Auto Rebase` +- From the Commit Graph: Right-click a branch and select AI Auto Rebase + +**Key settings:** +- `gitlens.ai.autoRebase.confidenceThreshold` — Set the minimum confidence level (0-1) for automatic conflict resolution +- `gitlens.ai.resolveConflicts.customInstructions` — Provide custom instructions for how conflicts should be resolved + +### Compose and Recompose `Pro` +**Available in:** Pro, Advanced, and Business plans + +Shape your commit history with AI-assisted commit crafting and branch restructuring. + +- **Compose**: Craft clean, logical commits from your uncommitted working changes using the Commit Composer in the Commit Graph +- **Recompose**: Restructure existing commits on a branch using AI. Recompose commands let you reorganize, split, or combine commits for a clearer history + +**How to access:** +- From the Commit Graph: Enter Compose mode to create commits from working changes +- From the Commit Graph context menu: Right-click commits to access Recompose Branch, Recompose from Commit, or Recompose Selected Commits +- From the Command Palette: `GitLens: Recompose Branch` + --- ## AI Credit Allocation by Plan @@ -106,6 +149,7 @@ GitLens offers flexibility in choosing your AI provider: 3. **Custom Provider** (BYOK): Connect your own key from supported AI services > - New OpenAI and Google models +- Mistral - Self-hosted Azure AI models - OpenAI-compatible API providers - Local Ollama models @@ -128,6 +172,14 @@ To configure your AI provider: - **Credit usage monitoring**: Track your credit consumption for better allocation management - **Default AI mode**: Choose between concise or detailed outputs for each feature +### AI File Exclusions + +Control which files are included in AI context to protect sensitive data: + +- **Ignore files**: GitLens respects `.aiignore`, `.cursorignore`, and `.aiexclude` files in your repository to exclude matching paths from AI prompts +- **Exclude setting**: Use the `gitlens.ai.exclude.files` setting to define additional file patterns to exclude +- Common files like lock files, minified assets, and build output directories are excluded by default + ### Organization-Level Controls `Business` - **Enforceable AI rules**: Set organization-wide policies for AI usage diff --git a/gitlens/GL-Integrations.md b/gitlens/GL-Integrations.md index 170a2b7..5a78b46 100644 --- a/gitlens/GL-Integrations.md +++ b/gitlens/GL-Integrations.md @@ -14,7 +14,8 @@ GitLens supports a wide range of remote providers to enhance your Git workflow i - Gitea - Gerrit - Bitbucket (Cloud and Server) -- Azure DevOps +- Azure DevOps (Cloud and Server) +- Linear (issue tracking) You can also define [custom remote providers or providers with custom domains](/gitlens/settings/#remote-provider-integration-settings). @@ -42,6 +43,7 @@ You can use the following GitLens commands to interact with files, commits, and ### Files - **Open File from Remote** (`gitlens.openFileFromRemote`) — Open a local file by specifying a remote file URL +- **Open Revision from Remote** (`gitlens.openRevisionFromRemote`) — Open a specific file revision from a remote URL, resolving the exact revision rather than the working copy - **Open File on Remote** (`gitlens.openFileOnRemote`) — Open the current file or revision on the remote - **Copy Remote File URL** (`gitlens.copyRemoteFileUrlToClipboard`) — Copy the URL of the current file or revision - **Open File on Remote From...** (`gitlens.openFileOnRemoteFrom`) — Open a file/revision from a specific branch or tag @@ -93,7 +95,7 @@ To connect GitHub or GitLab to GitLens, you'll use your GitKraken account via th 4. Click **Connect with GitHub** or **Connect with GitLab** and complete the sign-in process. 5. Select **Complete Setup** to return to Visual Studio Code and activate the integration. -You can connect multiple integrations if needed. +You can connect multiple integrations if needed, including multiple accounts for the same provider. For example, you can connect both a personal and a work GitHub account simultaneously. Use the integration settings to set a primary account, manage connections, and scope searches to a specific account.
@@ -104,6 +106,14 @@ You can connect multiple integrations if needed.

Community users are limited to basic functionality only.

+## GitHub PR Stacks `PRO` + +GitLens supports stacked pull request workflows on GitHub.com. When working with stacked PRs, GitLens shows stack information including the stack size, your PR's position within the stack, and the base ref. Merge operations are stack-aware, letting you choose to merge a single layer or the entire stack. + +PR stack details appear in the Commit Graph pull request sheet when viewing a PR that belongs to a stack. + +*** + ## GitHub Enterprise Server and GitLab Self-Managed Integration `PRO` GitLens Pro supports advanced integration with GitHub Enterprise Server and GitLab Self-Managed. @@ -115,7 +125,7 @@ Once authenticated, GitLens enhances autolinks for these services in hover cards - Pull request and issue details directly in the Sidebar views
- +
Enhanced hover cards with issue and PR metadata
@@ -175,6 +185,6 @@ GitLens Pro supports integration with Jira Cloud via your GitKraken Account. Thi You can also configure this via the [Integration Settings](https://gitkraken.dev/settings/integrations?source=help_center&product=gitlens) in a browser.
- +
Jira integration via GitLens Cloud Integrations panel
diff --git a/gitlens/GL-Launchpad.md b/gitlens/GL-Launchpad.md index 6c8d7ce..c28926b 100644 --- a/gitlens/GL-Launchpad.md +++ b/gitlens/GL-Launchpad.md @@ -27,7 +27,7 @@ The GitLens Launchpad helps you manage pull requests by status, so you can quick 2. Search for **GitLens: Open Launchpad**, or select **Pull Request** from the status bar in VS Code.
- Opening the Launchpad from the Command Palette in VS Code + Opening the Launchpad from the Command Palette in VS Code
Accessing the Launchpad
diff --git a/gitlens/GL-Visual-File-History.md b/gitlens/GL-Visual-File-History.md index d9e3f88..5168451 100644 --- a/gitlens/GL-Visual-File-History.md +++ b/gitlens/GL-Visual-File-History.md @@ -8,26 +8,32 @@ taxonomy: Last updated: August 2025 -## Visual File History +## Visual History -The GitLens **Visual File History** shows how a file has evolved, including when changes were made, the size of those changes, and who made them. +The GitLens **Visual History** (formerly Visual File History) shows how your code has evolved, including when changes were made, the size of those changes, and who made them. Visual History supports multiple scopes: view the history of a single file, a folder, an entire repository, or a specific branch. --- -### Open Visual File History +### Open Visual History -You can open the Visual File History view in two ways: +You can open the Visual History view in two ways: 1. From the **GitLens Inspect** sidebar. - - Open the sidebar, then select the **Visual File History** view. + - Open the sidebar, then select the **Visual History** view. 2. From the **Command Palette**: - macOS: Cmd + Shift + P - Windows/Linux: Ctrl + Shift + P - - Search for **GitLens: Show Visual File History View**. + - Search for **GitLens: Show Visual History View**. + +### Scope Options + +- **File or Folder**: Visualize the history of a specific file or folder +- **Repository**: See the full history of your entire repository +- **Branch**: Slice history by branch to focus on a specific line of work
- Visual File History view in GitLens showing commits plotted by author and time -
Visual File History view
+ Visual History view in GitLens showing commits plotted by author and time +
Visual History view
--- diff --git a/gitlens/GL-Workflow-Cleanup-prepare-for-review.md b/gitlens/GL-Workflow-Cleanup-prepare-for-review.md index 89ed243..fa5f5bf 100644 --- a/gitlens/GL-Workflow-Cleanup-prepare-for-review.md +++ b/gitlens/GL-Workflow-Cleanup-prepare-for-review.md @@ -71,6 +71,8 @@ GitLens uses Git intelligence to help you ship work that is easier to review, re - [Launchpad (PR and review awareness)](https://help.gitkraken.com/gitlens/gitlens-features/#launchpad-pro) +- [Start Review](/gitlens/gl-accelerate-pr-reviews/#start-review-pro) (quick-pick wizard to select a PR, check out branch or worktree, and optionally open AI review chat) + - Worktrees (parallel branch workflows) - Commit Graph context menu actions diff --git a/gitlens/GL-accelerate-pr-reviews.md b/gitlens/GL-accelerate-pr-reviews.md index 4589468..16e84e3 100644 --- a/gitlens/GL-accelerate-pr-reviews.md +++ b/gitlens/GL-accelerate-pr-reviews.md @@ -48,6 +48,20 @@ To start reviewing:
+## Start Review `PRO` + +The **Start Review** command provides a quick-pick wizard for jumping into a pull request review. It walks you through selecting an integration, picking a PR, and choosing how to check it out (as a branch or in a new worktree). You can also optionally open an AI chat with a review prompt to assist your review. + +To use Start Review: + +1. Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`). +2. Run: `GitLens: Start Review`. +3. Select your integration and pull request, then choose your checkout method. + +
+

This feature is available with a GitLens Pro subscription or higher.

+
+ ## Worktrees Worktrees let you check out multiple branches simultaneously in separate working directories. This means you don’t need to commit or stash in-progress changes before switching to another branch—perfect for reviewing pull requests without disrupting your workflow. diff --git a/gitlens/gitlens-faq.md b/gitlens/gitlens-faq.md index 59116d6..bacade0 100644 --- a/gitlens/gitlens-faq.md +++ b/gitlens/gitlens-faq.md @@ -1,101 +1,107 @@ ---- - ---- -title: GitLens FAQ -description: Frequently asked questions about GitLens and GitKraken account integration. -taxonomy: - category: gitlens ---- - -Last updated: July 2025 - -Get answers to frequently asked questions about GitLens features, sign-in options, and GitKraken account integration. - -*** - -## What is GitLens Community vs GitLens Pro? - -Learn about the differences between the two versions on the [GitLens Community vs GitLens Pro](/gitlens/gitlens-community-vs-gitlens-pro) page. - -*** - -## How Do I Sign In or Out of GitLens? - -### Sign In to GitLens - -To sign in with your GitKraken account: - -- Click the GitLens icon in the sidebar. -- Under **GITKRAKEN ACCOUNT**, select `Sign In`. - -
- GitLens sidebar with sign-in option -
Sign in from the GitLens sidebar
-
- -You can also sign in via the VS Code Command Palette: - -- Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`). -- Type and select `GitLens: Sign In to GitKraken...`. - -
- VS Code command palette with sign-in command -
Sign in using the command palette
-
- -### Sign Out of GitLens - -To sign out: - -- Click the GitLens icon in the sidebar. -- Under **GITKRAKEN ACCOUNT**, select `Sign Out`. - -
- GitLens sidebar with sign-out option -
Sign out from the GitLens sidebar
-
- -Or use the VS Code Command Palette: - -- Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`). -- Type and select `GitLens: Sign Out of GitKraken`. - -
- VS Code command palette with sign-out command -
Sign out using the command palette
-
- -*** - -## How do I enable debug logging? - -You can enable debug logging by opening the Command Palette (`ctrl+shift+p` or `command+shift+p`) and running the command `GitLens: Enable Debug Logging`. - - - -To view logs, open the Output Window (View > Output). The logs will be listed in the _GitLens_ and _GitLens (Git)_ channels. These channels can be toggled from the dropdown. - - - -*** - -## How can I export logs? - -You can export logs using the actions in the overflow menu of the Output view. - - - -*** - -## Can GitLens or Visual Studio Code Work with a Proxy? - -Yes, you can configure proxy settings from the Visual Studio Code settings. To open these settings, use the keyboard shortcut `command/ctrl + ,`. Then, search for "proxy" to see all related settings. - - - - -*** - -## Can I Use My GitLens Paid License on More Than One Computer? - -Yes. Your GitLens Pro license is tied to your email address, not a specific device. You can activate and use GitLens on multiple computers using the same account. +--- + +--- +title: GitLens FAQ +description: Frequently asked questions about GitLens and GitKraken account integration. +taxonomy: + category: gitlens +--- + +Last updated: July 2025 + +Get answers to frequently asked questions about GitLens features, sign-in options, and GitKraken account integration. + +*** + +## What is GitLens Community vs GitLens Pro? + +Learn about the differences between the two versions on the [GitLens Community vs GitLens Pro](/gitlens/gitlens-community-vs-gitlens-pro) page. + +*** + +## How Do I Sign In or Out of GitLens? + +### Sign In to GitLens + +To sign in with your GitKraken account: + +- Click the GitLens icon in the sidebar. +- Under **GITKRAKEN ACCOUNT**, select `Sign In`. + +
+ GitLens sidebar with sign-in option +
Sign in from the GitLens sidebar
+
+ +You can also sign in via the VS Code Command Palette: + +- Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`). +- Type and select `GitLens: Sign In to GitKraken...`. + +
+ VS Code command palette with sign-in command +
Sign in using the command palette
+
+ +### Sign Out of GitLens + +To sign out: + +- Click the GitLens icon in the sidebar. +- Under **GITKRAKEN ACCOUNT**, select `Sign Out`. + +
+ GitLens sidebar with sign-out option +
Sign out from the GitLens sidebar
+
+ +Or use the VS Code Command Palette: + +- Open the Command Palette (`Ctrl+Shift+P` or `Cmd+Shift+P`). +- Type and select `GitLens: Sign Out of GitKraken`. + +
+ VS Code command palette with sign-out command +
Sign out using the command palette
+
+ +*** + +## How do I enable debug logging? + +You can enable debug logging by opening the Command Palette (`ctrl+shift+p` or `command+shift+p`) and running the command `GitLens: Enable Debug Logging`. + + + +To view logs, open the Output Window (View > Output). The logs will be listed in the _GitLens_ and _GitLens (Git)_ channels. These channels can be toggled from the dropdown. + + + +*** + +## How can I export logs? + +You can export logs using the actions in the overflow menu of the Output view. + + + +*** + +## Can GitLens or Visual Studio Code Work with a Proxy? + +Yes, you can configure proxy settings from the Visual Studio Code settings. To open these settings, use the keyboard shortcut `command/ctrl + ,`. Then, search for "proxy" to see all related settings. + + + + +*** + +## Does GitLens Support Git Submodules? + +Yes. GitLens provides basic Git submodule support, including automatic discovery and tracking of submodules in your workspace. Submodules are distinguished with their own icons in sidebar views, and diffs correctly handle submodule pointer changes. GitLens detects superproject paths and tracks submodule status alongside your main repository. + +*** + +## Can I Use My GitLens Paid License on More Than One Computer? + +Yes. Your GitLens Pro license is tied to your email address, not a specific device. You can activate and use GitLens on multiple computers using the same account. diff --git a/gitlens/gitlens-features.md b/gitlens/gitlens-features.md index 6294cd9..e6564d9 100644 --- a/gitlens/gitlens-features.md +++ b/gitlens/gitlens-features.md @@ -1,1355 +1,1575 @@ ---- -title: GitLens Features -description: Learn how to use GitLens autolinks, terminal links, powerful Git commands, remote provider integrations, and UI customizations to enhance your Git workflow in VS Code. -taxonomy: - category: gitlens ---- -Last updated: June 2025 - -Features marked with `PRO` require a [trial or paid plan](https://www.gitkraken.com/gitlens/pricing?source=help_center&product=gitlens) for use on privately hosted repositories. - -Features marked with `PREVIEW` require a GitKraken Account, with access based on your [plan level](https://www.gitkraken.com/gitlens/pricing?source=help_center&product=gitlens) (Community, Pro, etc). - -*** - -## Revision Navigation - -
- GitLens revision navigation animated demo -
Step through revisions using built-in navigation commands
-
- -Revision Navigation allows you to quickly compare different versions of a file or specific lines. - -Available commands: - -- **Open Changes with Previous Revision** (`gitlens.diffWithPrevious`) - Compare the current file or revision with the previous commit. - -- **Open Changes with Next Revision** (`gitlens.diffWithNext`) - Compare the current file or revision with the next commit. - -- **Open Line Changes with Previous Revision** (`gitlens.diffLineWithPrevious`) - View how a specific line changed compared to the previous commit. - -- **Open Changes with Working File** (`gitlens.diffWithWorking`) - Compare the committed version of the file with your working directory. - -- **Open Line Changes with Working File** (`gitlens.diffLineWithWorking`) - See the difference between the last committed line and its current version. - -- **Open Changes with Branch or Tag...** (`gitlens.diffWithRevisionFrom`) - Compare the file against another revision from a selected reference. - -- **Open Changes with Revision...** (`gitlens.diffWithRevision`) - Compare the current file with any revision of the same file. - - -*** - -## Current Line Blame - -
- GitLens current line blame showing inline annotation -
Blame annotation showing author, date, and commit message
-
- -Current Line Blame adds a subtle, [customizable](/gitlens/settings/#current-line-blame-settings), and [themable](/gitlens/settings/#themable-colors) annotation at the end of the active line. - -By default, the annotation displays: - -- The author of the most recent commit -- The commit date -- The commit message - -You can control visibility with the command: - -- **Toggle Line Blame Annotations** (`gitlens.toggleLineBlame`) - - -*** - -## Git CodeLens - -
- GitLens CodeLens annotations above file and code blocks -
Inline Git insights for authorship and history
-
- -Git CodeLens displays inline Git insights at the top of each file and above code blocks (enabled by [default](/gitlens/settings/#git-codelens-settings), and [customizable](/gitlens/settings/#git-codelens-settings)). - -### CodeLens Types - -- **Recent Change** - Shows the author and date of the most recent commit for the file or block. - - Click to open a **quick pick menu** with commit details and actions (e.g., compare, explore history). - -- **Authors** - Displays the number of contributors and the most prominent author. - - Click to toggle Git blame annotations across the file. - - Automatically hides if there's only one author (to reduce visual noise). - -### CodeLens Behavior - -Click behavior for each CodeLens is fully [customizable](/gitlens/settings/#git-codelens-settings). You can choose from: - -- Toggle file blame annotations -- Compare the current commit to the previous one -- Show file or commit detail menus -- View commit history for the file or branch - -### Related Command - -- **Toggle Git CodeLens** (`gitlens.toggleCodeLens`) - Shortcut: `Shift+Alt+B` - -*** - -## Status Bar Blame - -
- Status bar showing Git blame annotation with author and date -
Quick access to blame details in the VS Code status bar
-
- -The **Status Bar Blame** displays Git blame details for the current line directly in the VS Code status bar. This feature is enabled by default and fully customizable. - -### Default Behavior - -- Displays the **author** and **date** of the last commit affecting the current line. -- Clicking the status bar opens a **quick pick menu** with commit actions (compare, explore history, etc.). - -### Customizable Click Behavior - -You can configure what happens when the status bar item is clicked: - -- Toggle file blame annotations -- Toggle Git CodeLens on and off -- Compare the line’s commit to the previous one -- Compare the line’s commit to the working tree -- Show a quick pick menu with: - - Commit details and actions *(default)* - - File-level commit details - - Commit history of the current file - - Commit history of the current branch - - -*** - -## Hovers - -GitLens provides rich, [customizable](/gitlens/settings/#hover-settings) hover annotations to surface Git information directly in your editor. These hovers are enabled by default and support both blame and diff insights. - -### Current Line Hovers - -
- Current line hover in GitLens -
Git blame hover shown over the current line
-
- -#### Details Hover - -
- GitLens current line details hover with commit info and actions -
Expanded commit info and quick actions
-
- -Displays detailed commit information for the current line. - -Features: - -- **Automatic issue linking** for Bitbucket, Gerrit, Gitea, GitHub, GitLab, and Azure DevOps. -- **Quick-action bar** with commands: - _Open Changes_, _Blame Previous Revision_, _Open on Remote_, _Invite to Live Share_, _Show More Actions_. -- Click the **commit SHA** to trigger the _Show Commit_ command. - -#### Changes (Diff) Hover - -
- GitLens diff hover showing current vs. previous line version -
View the previous version of a changed line
-
- -Displays the previous version of the current line. - -- Click **Changes** to run the _Open Changes_ command. -- Click commit SHAs to open _Show Commit_ views. - -### Annotation Hovers - -
- GitLens annotation hover example -
Hover insights while annotating with blame
-
- -Accessible when blame annotations are active, these hovers provide the same detail and diff options. - -#### Details Hover - -
- Details hover during annotation -
Commit metadata and action menu per line
-
- -Shows rich commit details per line with: - -- Automatic issue linking -- Quick-action command bar -- Clickable commit SHA to open commit details - -#### Changes (Diff) Hover - -
- Changes hover during annotation -
Inline diff hover showing previous line content
-
- -Reveals the previous version of each annotated line. - -- Click **Changes** to run _Open Changes_. -- Click SHAs to open the _Show Commit_ view. - - -*** - -## File Blame - -
- GitLens file blame annotations in the editor gutter -
View who last modified each line and when
-
- -File Blame adds [customizable](/gitlens/settings/#gutter-blame-settings), [themable](/gitlens/settings/#themable-colors) inline annotations that show the commit and author responsible for each line in a file. - -### Features - -- Displays **commit message** and **commit date** per line (enabled by [default](/gitlens/settings/#file-blame-settings)). -- Adds a **heatmap (age) indicator** along the right edge to show how recently each line was changed. - _(See [File Heatmap](/gitlens/gitlens-features/#file-heatmap) for more info.)_ -- Easily toggle annotations with: - - - **Command**: `gitlens.toggleFileBlame` - - **Shortcut**: Alt+B - - **Dismiss**: Escape - - -*** - -## File Changes - -
- File changes annotations highlighting modified lines -
Highlight unpublished or most recent changes
-
- -The File Changes annotation highlights lines that have been changed either locally (unpublished) or by the most recent commit. - -This feature is [customizable](/gitlens/settings/#file-changes-settings) and [themable](/gitlens/settings/#themable-colors), and is designed for quick visual inspection of file updates. - -### Features - -- **Highlights local changes** and recent commit modifications. -- Toggle with the command: `gitlens.toggleFileChanges` -- Press Escape to disable the annotations - - -*** - -## File Heatmap - -
- GitLens file heatmap on the right gutter of the editor -
Visualize how recently each line was modified
-
- -The File Heatmap adds a color-coded bar to the edge of your file, helping you quickly spot older versus more recent changes. - -### Features - -- Heatmap colors are [customizable](/gitlens/settings/#file-heatmap-settings) and reflect line age: - - **Hot (bright)** for recent changes - - **Cold (dim)** for older changes - _(Lines default to “cold” after 90 days.)_ -- Brightness adjusts dynamically based on the **median age** of all changes in the file. -- Toggle with the command: `gitlens.toggleFileHeatmap` -- Press Escape to hide the heatmap annotations - -*** - -## Code Suggest `PREVIEW` - -GitKraken Code Suggest simplifies code review by enabling you to propose edits across an entire project—not just the lines changed—in GitLens, GitKraken Desktop, or [gitkraken.dev](https://gitkraken.dev). - -When a pull request is open, you can make suggestions that collaborators can review and apply directly to the PR. - -
-

Note: Code Suggest is currently supported only for repositories hosted on github.com.

-
- -
- GitLens Code Suggest UI showing a PR suggestion in progress -
Suggest changes beyond just modified lines
-
- -### How to Create a Code Suggestion - -1. Open the [GitLens Inspect Overview](/gitlens/side-bar/#overview) for the repository. -2. Check out a branch that has an open pull request. -3. Click **Start Review for PR #PR**. -4. Modify and save any files to include in the suggestion. -5. When ready, select **Suggest Changes for PR**, add a title, and click **Create Code Suggestion**. - -
- Creating a code suggestion in GitLens -
Create a suggestion from your local changes
-
- -Once submitted, the pull request will receive a comment with two options: - -- **Code Suggestion for #PR** — opens in gitkraken.dev -- **Locally on your machine** — opens in GitLens or [GitKraken Desktop](/gitkraken-client/pull-requests/#review-code-and-suggest-changes) - -
- Comment with code suggestion options -
Collaborators can choose where to review and apply suggestions
-
- -### Accepting a Suggestion Locally - -1. Open the suggestion in GitLens or GitKraken Desktop. -2. Review each modified file. -3. Select **Apply** to apply the patch to your current branch. - Or use the dropdown to **Apply to a Branch**. - -
- Accepting suggestions from GitLens -
Apply suggestions directly to a local or new branch
-
- -### Accepting a Suggestion on gitkraken.dev - -1. Select **Code Suggestion for #PR** in the PR comment. -2. Review the changes on gitkraken.dev. -3. Click **Commit Suggestions** to commit the patch directly to the PR’s branch. - -
- Committing suggestions from gitkraken.dev -
Accept changes and push them to the remote branch
-
- - -*** - -## Cloud Patches `PREVIEW` - -### What Are Cloud Patches and Why Use Them? - -Cloud Patches are Git patches that GitKraken securely stores for easy sharing across GitLens, GitKraken Desktop, and the GitKraken CLI. The patch is uploaded directly from your machine into secure cloud storage. - -This feature enables early collaboration—before a pull request is created—by letting you share in-progress work with your team. It helps streamline feedback cycles and reduce delays in PR reviews. - ---- - -### How to Set Up Cloud Patches - -Cloud Patches are enabled by default, but you can manage this per client. - -1. Open the Command Palette: - `Ctrl`/`Command` + `Shift` + `P` → **Preferences: Open User Settings (JSON)** - -2. Add the following line to your settings: - - "gitlens.cloudPatches.enabled": true - -To disable Cloud Patches, change the value to `false`. - - -### How to Work with Cloud Patches - -Cloud Patches are accessible from the **Cloud Patches** view in the GitLens sidebar. - -
- GitLens Cloud Patch creation screen -
Create a patch directly from your sidebar
-
- -You can create a Cloud Patch from: - -- Working Changes -- Commits -- Stashes -- Comparisons - -To create one, use **Share as Cloud Patch** from the command palette or the **Share** submenu in applicable GitLens views. - -
- Share as Cloud Patch in context menu -
Share patches from a variety of Git sources
-
- -#### Sharing Options - -Choose how your patch can be accessed: - -- **Anyone with the link** – Public access without login. -- **Anyone in my org** – Restricted to users in your GitKraken organization (GitKraken login required). -- **Only collaborators** – Restricted to selected organization members. Use **Invite** to choose recipients. - -Cloud Patches shared with you appear under the **Shared with Me** section. - -
-

Note: If you're a member of multiple organizations, you can switch organizations from the GitKraken Account view.

-
- -
- Cloud patch share dialog with access levels -
Control access to shared patches by role
-
- -You can also apply Cloud Patches directly from a shared URL. Simply click or paste the link, then follow GitLens prompts to apply it to your working directory or to a new/existing branch. - -
- Apply a cloud patch animation -
Apply patches seamlessly to your current repo
-
- -To delete a Cloud Patch, right-click it and choose **Delete Cloud Patch...**. - -
- Delete option in GitLens Cloud Patch view -
Remove unused patches with one click
-
- - -### Self-Hosting Cloud Patch Data - -If you prefer not to store Cloud Patch data on GitKraken servers, you can configure GitLens to use your own AWS S3 storage. - -Learn how to configure this in our [Self-Hosting Guide](/gk-dev/gk-dev-home/#self-hosted). - -*** - -## Commit Graph `PRO` - -The Commit Graph helps visualize your repository's commit history by displaying branches, commits, and contributors in a unified view. This makes it easier to understand project activity and make informed decisions quickly. - -
- Commit Graph in GitLens showing branches and commits -
Explore your full Git history at a glance
-
- ---- - -### How to Open the Commit Graph - -To open the Commit Graph: - -1. Open the Command Palette: - Cmd/Ctrl + Shift + P - -2. Type: - `Show Commit Graph` - -A new tab will open, displaying your current repository’s commit history. You can scroll through the graph and resize column widths for easier viewing. - -
- Using the Command Palette to open the GitLens Commit Graph -
Launch the graph directly from the Command Palette
-
- ---- - -### Commit Graph Header - -At the top of the graph, you’ll see: - -- **Repository name** -- **Checked-out branch** -- **Last fetched timestamp** - -From here, you can: - -- Click the branch name to switch branches -- Click **Fetch** to update commit data - -
- Commit Graph header with repo name, branch, and fetch option -
Access key branch controls directly from the header
-
- -
-

Note: The Commit Graph is available to all users on public or local repositories without needing an account.

- Private repository access requires a GitLens Pro subscription or trial.

-

We welcome your input—join the discussion on GitHub.

-
- -### Configuration and Layout - -The Commit Graph offers extensive layout and configuration options so you can tailor the view to fit your workflow. - ---- - -#### Column Customization - -All columns in the Commit Graph are fully customizable: - -- Drag and drop column headers to rearrange the layout. -- Right-click a column header to toggle columns on or off. -- The **Changes** column displays visual indicators for added (green) and deleted (red) lines in each commit. - -
- Column customization context menu in Commit Graph -
Customize visible columns with right-click options
-
- ---- - -#### Panel vs. Editor Layout - -You can choose where the Commit Graph appears: - -- **Panel Layout** — displays the graph in the bottom panel (next to Terminal) with a dedicated Commit Graph Details view. -- **Editor Area Layout** — shows the graph in a standard VS Code editor tab. - -To switch layouts: - -1. Click the gear icon in the top-right of the Commit Graph. -2. Select **Prefer Commit Graph in Panel Layout** or **Prefer Commit Graph in Editor Area**. - -You can even open both layouts simultaneously. - -
- Layout settings for Commit Graph -
Choose where the graph displays: Panel or Editor
-
- ---- - -#### Compact Layout - -For smaller screens or simplified views: - -- **Compact Graph Column Layout** reduces the visual size of the graph. -- The **Author** column shows avatars when minimized. -- Columns display icons instead of truncated text when resized to narrow widths. - -To enable the compact graph layout, right-click the **Graph** column header and select **Compact Graph Column Layout**. - -
- Compact layout in Commit Graph -
Enable compact mode for cleaner visuals
-
- ---- - -#### Scroll Markers - -Scroll markers appear alongside the Commit Graph scrollbar to highlight: - -- Checked-out branches -- Selected rows -- Search matches - -They provide quick navigation to key locations like `HEAD` or specific refs. - -You can toggle scroll markers in [Commit Graph settings](/gitlens/gitlens-features/#settings). - -
- Scroll markers in the GitLens Commit Graph -
Navigate instantly using visual markers
-
- - -### Settings - -You can adjust Commit Graph preferences through the GitLens Settings panel. - -1. Open the Command Palette: - Cmd/Ctrl + Shift + P - -2. Search for: - `GitLens: Open Settings` - -
- Commit Graph settings in GitLens -
Access GitLens settings from the Command Palette
-
- ---- - -### Rich Commit Search - -The Commit Graph includes a powerful search bar to locate commits by message, author, file, or even specific code changes. - -Use the following search prefixes: - -- `Commit:` -- `Message:` -- `Author:` -- `File:` -- `Change:` -- `@me` (to filter commits made by your user) - -
- Search bar filtering commit history in the Commit Graph -
Search commit history with advanced filtering
-
- -Use keyboard shortcuts to navigate results: - -- F3 / Cmd+G — next result -- Shift+F3 / Shift+Cmd+G — previous result -- Hold Shift and click arrows to jump to first or last match - -
- Navigating through commit search results -
Jump through results using keyboard or search controls
-
- -You can also refine results with: - -- **Match all** -- **Match case** -- **Regular expression** - -
- Commit Graph search filter toggles -
Adjust search filters for more precision
-
- ---- - -### Full Context Menu Support - -The Commit Graph supports right-click actions on branches, commits, tags, authors, and column headers. - -
- Right-click menu on commit for extra options -
Use context menus for advanced Git actions
-
- -Popular options include: - -- **Compare with Common Base** — View changes between the current and selected branches based on their shared ancestor. -- **Open All Changes with Common Base** — Launch a multi-diff view showing all changes that would be merged. -### Pull Request Indicators - -For GitHub and GitLab, GitLens displays a **Pull Request icon** on branches with active pull requests. To enable this: - -1. Connect your account using [rich integration settings](/gitlens/settings/#remote-provider-integration-settings). -2. The icon will appear next to branches in the graph once linked. - -
- Pull request icon displayed in Commit Graph -
Active pull requests are shown with branch-level icons
-
- ---- - -### Hiding Remotes, Branches, or Tags - -You can hide individual remotes, branches, or tags from the Commit Graph to reduce clutter and focus your view. - -- **To hide**: Hover over any ref and click **Hide**. -- **To show again**: Use the **Hide** panel at the top of the graph and reselect the ref. - -
- Hiding Git refs in the Commit Graph -
Use the “Hide” option to declutter the graph
-
- -#### Filtering Options - -You can further control what is shown using the filter dropdown: - -- **Show Current Branch Only** — Display the current branch and its upstream (minimal view) -- **Show All Local Branches** — Default view showing all local refs -- Toggle visibility of: - - Remote-only branches - - Tags - - Stashes -- Option to **dim merge commits** - -
- Commit Graph filter options -
Customize your view with filter presets
-
- ---- - -### Minimap (Experimental) - -The **Minimap** gives you a visual summary of repository activity at a glance: - -- Quickly locate `HEAD`, remotes, tags, and stashes -- Jump to any region in the graph using visual cues -- Toggle it via the **Minimap icon** in the top right - -
- Minimap view in Commit Graph -
Quickly navigate with the Commit Graph Minimap
-
- -#### Minimap Settings - -Customize the Minimap via the **graph icon dropdown**: - -- Toggle between: - - **Commits view** - - **Lines changed view** -- Show or hide: - - Markers for branches, tags, stashes, search results - -
- Minimap settings in Commit Graph -
Choose your preferred Minimap display and markers
-
- -#### Minimap Legend - -| Element | Description | -|--------|-------------| -| **Green lines** | `HEAD` | -| **Yellow lines** | Search results | -| **Blue blocks (top)** | Remote branches | -| **Brown blocks (top)** | Tags | -| **Pink blocks (bottom)** | Stashes | -| **Blue blocks (bottom)** | Local branches | -| **Highlighted area** | Current view region | - -
-

Note: We welcome your feedback on the Minimap. Share your thoughts on the GitLens GitHub Discussions.

-
- - -*** - -## Launchpad `PRO` - -Launchpad organizes pull requests (PRs) by status to help you identify bottlenecks and take prioritized actions. This streamlined view allows you to manage PRs quickly, directly within VS Code. - -
- Launchpad PR overview -
View and act on PRs based on current status
-
- -
-

Launchpad currently supports GitHub.com and GitLab.com repositories. To use it, connect your Git provider using the GitHub or GitLab Integration.

-
- ---- - -### Accessing Launchpad - -- From the **Command Palette**: `Command/Ctrl + Shift + P` → `GitLens: Open Launchpad` -- Or select the **Pull Request status bar item** in VS Code - -
- Opening Launchpad from status bar -
Open Launchpad from the status bar or Command Palette
-
- ---- - -### Using Launchpad - -View PRs by grouped statuses: -- Ready to merge -- Blocked -- Requires follow-up -- Needs your review -- Waiting for review -- Draft -- Snoozed - -Click a PR to: -- View full details -- Open in your browser -- Merge (if eligible) -- Switch to the branch or open in a worktree - -
- PR detail view in Launchpad -
Interact with pull requests directly in VS Code
-
- -You can also start or review [Code Suggestions](/gitlens/gitlens-features/#code-suggest-preview) directly from the PR action menu. - -
- Launchpad with Code Suggest options -
Suggest code edits from within the Launchpad
-
- -*This feature is available through the [Gitkraken MCP](https://help.gitkraken.com/mcp/mcp-tools-reference/)* - ---- - -### Pin or Snooze PRs - -Use the pin icon to keep important PRs in the **Pinned** group. - -Use the snooze icon to move less urgent PRs into the **Snoozed** group. - -Click the icon again to unpin or unsnooze as needed. - -
- Pin or snooze pull requests -
Pin or snooze PRs to manage your workflow
-
- -
-

Note: Launchpad prioritizes items requiring action by elevating them to the top of the list. This behavior may change in future updates.

-
- -
-

This feature is only available on GitLens Pro subscription tiers or higher.

-
- - -*** - -## Visual File History - -Visual File History provides a clear timeline of a file's changes—showing when, what, and who modified it—helping you quickly understand how a file evolved. - -To open Visual File History: -- Use the GitLens **Inspect Sidebar**, or -- From the **Command Palette**: `Cmd/Ctrl + Shift + P` → `GitLens: Show Visual File History View` - -
- Visual File History overview -
Track authorship, size, and timing of file changes
-
- ---- - -### How to Read the Graph - -- **Y-axis (left):** Contributors, shown in individual swim lanes -- **X-axis:** Timeline of commits -- **Bubbles:** Color-coded per author; bubble size reflects the magnitude of changes -- **Bars (right y-axis):** Line additions (green) and deletions (red) - -Hover over a bubble or bar for detailed insights. - -
- Hover over commit for details -
View commit size, author, and message on hover
-
- -
-

The Community plan supports Visual File History only on public and local repositories.

-
- - -*** - -## GitKraken AI - -GitKraken AI enhances your development workflow with automated commit messages, intelligent stash descriptions, and code change explanations. - ---- - -### AI-Generated Commit Messages - -Automatically generate descriptive commit messages based on staged changes. - -
- Generating AI commit messages -
AI-generated commit messages from staged changes
-
- -To use: -- Stage your changes. -- Open the **Commit Graph** and click **Generate Commit Message**, or -- Use the Command Palette: `GitLens: Generate Commit Message (Experimental)` - -GitKraken AI will analyze the diff of staged changes to generate a message. You may provide additional context in the commit box to improve results. - -You can customize behavior using: -- `gitlens.experimental.generateCommitMessagePrompt` for message formatting -- Additional [`gitlens.ai` settings](/gitlens/gitlens-settings/#misc-settings) for provider and model preferences - -
-

Pro users and above can optionally use a custom API key to connect to a different AI provider. GitKraken AI currently uses the Google Gemini model.

-
- ---- - -### AI Stash Messages `PRO` - -Available in **Pro**, **Advanced**, and **Business** plans. - -Automatically generate meaningful stash descriptions to make your stashes easier to identify later. - -**How to access:** -- From the Command Palette: `GitLens: Generate Stash Message with AI` -- During stash creation: Use the AI option in the stash interface -- In the Stash view: Generate AI-powered descriptions for existing stashes - ---- - -### AI Explanations `PREVIEW` - -Let GitKraken AI help explain complex changes across your repo with natural language summaries. - -
- AI branch summary explanation -
AI summaries in rendered markdown for improved clarity
-
- -✨**Explain** functionality provides markdown summaries for: -- Branches — ✨**Explain Branch** -- Working changes — ✨**Explain Working Changes** -- Stashes — ✨**Explain Stash** - -**Where to find it:** -- Commit Graph -- Command Palette -- GitLens views: Commits, Branches, Stashes, Search & Compare - -With GitKraken AI explanations, you can quickly understand: -- What changed across all commits in a branch -- What you've modified in your working directory -- What your previous stashes contain -#### AI Commit Explanations `PRO` - -*Available in:* **Pro**, **Advanced**, and **Business** plans - -Understand the purpose and context of commits with AI-generated summaries. These explanations help you grasp the intent behind complex commits without manually reviewing all changes. - -**How to access:** -- **Commit Details** view: See the AI explanation panel -- **Cloud Patch Details** view: View AI insights alongside commit data -- **Commit Review**: Generate explanations for any selected commit - ---- - -### AI Changelog Creation `ADVANCED` - -*Available in:* **Advanced** and **Business** plans only - -Automatically generate detailed and structured changelogs from a set of selected commits—ideal for maintaining release documentation. - -**How to access:** -- **Search/Compare** view: Click the inline button on the commits line -- **Commit Graph**: Select multiple commits, right-click, then choose **Generate Changelog** -- **Command Palette**: `GitLens: Generate Changelog from Commits` - -
-

More questions about GitKraken AI? See the GitKraken AI FAQ for additional details.

-
- -### Commit Composer View `Pro` -The Commit Composer has evolved from a simple one-step process into a comprehensive drafting and review experience. Previously, AI would analyze your changes and immediately create commits. Now, the new Commit Composer view gives you complete control over the composition process, with options to auto-compose with AI or compose manually. - -*This feature is available through the [Gitkraken MCP](https://help.gitkraken.com/mcp/mcp-tools-reference/)* - -Join the [Commit Composer discussion](https://github.com/gitkraken/vscode-gitlens/discussions/4530) and provide feedback. - - - -#### Interactive Draft Commits - -When composing commits, GitLens now creates "draft" commits that you can review, modify, and refine before applying them to your repository. This new workflow lets you: - -- **Preview before committing**: See exactly what will be committed before it touches your repository -- **Switch Models**: Try composition with different AI models -- **Guide the AI**: Provide custom instructions to match your team's conventions and preferences -- **Iterate and refine**: Regenerate individual messages or entire commit compositions -- **Review and edit**: Manually tweak any commit message or approach - - - -You can launch the new Commit Composer view from several places in GitLens: - -- **GitLens commit details view** -- **Context menu on the WIP row** in the GitLens Commit Graph -- **Commit Graph details panel**: Switch to **Compose** mode -- **✨ icon in the SCM view header** -- **Command palette**: Search for "Compose Commits" - - - - -The foundation is now in place for even more powerful composition features in future releases, including intuitive drag-and-drop functionality for moving lines and hunks between commits, creating new draft commits on the fly, and reordering commit sequences. - -Whether you prefer to let AI handle the heavy lifting or want granular control over every detail, Commit Composer provides the flexibility to create well-structured commit histories that make code reviews more effective and repository history easier to understand. - -### Commit Composer: Branch Recomposition - -Commit Composer now lets you clean up and reorganize commits on existing branches, making it perfect for preparing pull requests or refining your commit history before pushing. - - - -#### Recompose Entire Branches - -Open Commit Composer from any branch in the Commit Graph (or anywhere branches appear in GitLens) to inspect and reorganize its commits. The composer creates draft commits you can review before applying changes to your repository. - -**Auto-Recompose with AI**: Let AI analyze your branch and restructure commits into logical, well-documented units. Choose your preferred model and provide custom instructions to match your team's conventions. (Pro tip: Set default instructions in the "Generate Commits: Custom Instructions" setting to save time.) - -**Manual Control**: Review AI suggestions, regenerate specific commit messages, or manually edit messages and change organization. The composer gives you complete flexibility to craft the commit story that works best. - - - -#### Enhanced Composer Capabilities - -Commit Composer now handles edge cases that previously blocked composition: - -- **Untracked files**: Working changes now include untracked files, so all modifications can be composed together -- **New repositories**: Compose your initial commits even before a base commit exists -- **Performance boost**: Significantly faster rendering when working with changes across many files - -### Commit Composer: Selective Recomposition - -Commit Composer now lets you recompose specific commits within a branch, giving you precise control over cleaning up your commit history. - - - -Previously, you could only recompose all working changes or an entire branch. Now you can select specific commits that need refinement—like those quick "wip" or "fix" commits made during rapid iteration—and let AI restructure just those changes with better messages. - -Select multiple contiguous commits on the same branch using Shift or Cmd click, then right-click and choose "Recompose Selected Commits." Commit Composer opens with only your selected commits as drafts, ready for AI-powered or manual refinement. - -Commit Composer is also more discoverable, with a new button on the WIP row in the Commit Graph that opens the composer for all working directory changes. Additionally, when rebasing, you can now switch directly into Commit Composer from the Rebase Editor, canceling your rebase to let AI handle the composition instead. - - - -*** - -## Git Command Palette - - - -Adds a [customizable](/gitlens/settings/#git-command-palette-settings) Git Command Palette (`gitlens.gitCommands`) for guided, step-by-step access to many common Git commands. Quickly navigate Git actions, explore commit history, manage stashes, and more—all through intuitive, confirmable menus. - ---- - -### Quick Commit Access - -- **Show Branch History** (`gitlens.showQuickBranchHistory`): Explore the commit history of any selected branch. - - - -- **Show Current Branch History** (`gitlens.showQuickRepoHistory`): View the commit history of your current branch. -- **Show File History** (`gitlens.showQuickFileHistory`): Access the full commit history of the current file. - - - -- **Search Commits** (`gitlens.showCommitSearch`): Use a quick pick menu to search by: - - - Message: `` - - Author: `@` - - Commit SHA: `#` - - File path or glob: `:` - - Patch changes: `~` - - - - Refer to the [Git log documentation](https://git-scm.com/docs/git-log) for advanced usage. - -- **Show Commit Details** (`gitlens.showQuickCommitDetails`): Review commit information and actions. - - - -- **Show Line Commit Details** (`gitlens.showQuickCommitFileDetails`): Explore the file's commit and take action on it. - - - - -### Quick Stash Access - -
- -
- -
- -
- -- Adds a _Show Stashes_ command (`gitlens.showQuickStashList`) to show a quick pick menu to explore your stashes. - ---- - -### Quick Status Access - -- Adds a _Show Repository Status_ command (`gitlens.showQuickRepoStatus`) to show a quick pick menu for visualizing the current repository status. - -
- -
- ---- - -## Interactive Rebase Editor - -
- -
- -Adds a user-friendly interactive rebase editor to easily configure an interactive rebase session: - -- Quickly re-order, edit, squash, and drop commits. -- Includes drag & drop support. - -### To use this directly from your terminal (e.g., when running `git rebase -i`): - -- Set VS Code as your default Git editor: - ```bash - git config --global core.editor "code --wait" - ``` - -- Or, to only affect rebase sessions: - ```bash - git config --global sequence.editor "code --wait" - ``` - -> To use the Insiders edition of VS Code, replace `code` with `code-insiders` in the commands above. - - -*** - -## Autolinks - -Use autolinks to convert external references—such as Jira issues or Zendesk tickets—into clickable links directly from commit messages. - -
- -
Example of autolinks in commit messages
-
- -## Terminal Links - -
- -
Autolinks in the integrated terminal
-
- -Terminal links optionally provide clickable references in the integrated terminal: - -- [Branches, tags, and commit ranges](/gitlens/settings/#terminal-links-settings): Quickly explore their commit history. -- [Individual commits](/gitlens/settings/#terminal-links-settings): Review commit details and take further action. - -*** - -## Remote Provider Integrations - -GitLens provides rich integrations with many remote providers, including GitHub, GitHub Enterprise, GitLab, Gitea, Gerrit, Bitbucket, Bitbucket Server, and Azure DevOps. You can also define [custom remote providers](/gitlens/settings/#remote-provider-integration-settings) or [remote providers with custom domains](/gitlens/settings/#remote-provider-integration-settings). - -Basic integrations offer issue and pull request autolinking. Richer integrations, like GitHub or GitLab, include: - -- Launchpad support -- Rich hover information for autolinks -- Pull request association with branches and commits -- Avatars for authors and commenters - -These integrations also support various commands to open or copy URLs for files, commits, branches, and repositories: - -- **Open File from Remote** (`gitlens.openFileFromRemote`) — Open a local file from a URL on a remote provider -- **Open File on Remote** (`gitlens.openFileOnRemote`) — Open a file or revision on the remote provider -- **Copy Remote File URL** (`gitlens.copyRemoteFileUrlToClipboard`) — Copy the URL of a file or revision -- **Open File on Remote From...** (`gitlens.openFileOnRemoteFrom`) — Open a file or revision from a specific branch or tag -- **Copy Remote File URL From...** (`gitlens.copyRemoteFileUrlFrom`) — Copy the URL from a specific branch or tag -- **Open Commit on Remote** (`gitlens.openCommitOnRemote`) — Open a commit -- **Copy Remote Commit URL** (`gitlens.copyRemoteCommitUrl`) — Copy the commit URL -- **Open Branch on Remote** (`gitlens.openBranchOnRemote`) — Open a branch -- **Copy Remote Branch URL** (`gitlens.copyRemoteBranchUrl`) — Copy the branch URL -- **Open Branches on Remote** (`gitlens.openBranchesOnRemote`) — Open the branches view -- **Copy Remote Branches URL** (`gitlens.copyRemoteBranchesUrl`) — Copy the branches view URL -- **Open Comparison on Remote** (`gitlens.openComparisonOnRemote`) — Open a comparison view -- **Copy Remote Comparison URL** (`gitlens.copyRemoteComparisonUrl`) — Copy the comparison view URL -- **Open Pull Request on Remote** (`gitlens.openPullRequestOnRemote`) — Open a pull request -- **Copy Pull Request URL** (`gitlens.copyRemotePullRequestUrl`) — Copy the pull request URL -- **Open Repository on Remote** (`gitlens.openRepoOnRemote`) — Open the repository -- **Copy Remote Repository URL** (`gitlens.copyRemoteRepositoryUrl`) — Copy the repository URL - -### Connecting the GitHub and GitLab Integration - -The GitHub and GitLab integrations connect through your GitKraken account at [gitkraken.dev](https://gitkraken.dev/settings/integrations?source=help_center&product=gitlens). - -To connect an integration: - -1. Open the Command Palette (`Cmd`/`Ctrl`+`Shift`+`P`). -2. Run `GitLens: Manage Integrations`. -3. Alternatively, open **GitKraken Account** from the GitLens Activity Bar and select **Integrations**. - -
- -
Connect integrations from the GitKraken dashboard
-
- -If you're not already signed in, you'll be prompted to log in to your GitKraken account. Then, select **Connect with GitHub** or **Connect with GitLab**, and follow the sign-in steps. You can connect multiple integrations if needed. - -Finish the process by selecting **Complete Setup** to return to VS Code and begin using the integrations. - -
- -
Manage your connected integrations
-
- -
-

Community users are limited to basic functionality only.

-
- - -## GitHub Enterprise Server and GitLab Self-Managed Integration `PRO` - -GitLens Pro offers a richer integration with GitHub Enterprise Server and GitLab Self-Managed. - -Once authenticated, GitLens enhances autolinks in hovers with additional context. You’ll see your GitHub Enterprise Server or GitLab Self-Managed avatar, links to related pull requests, and a summary of pull request or issue details. Sidebar views for commits or branches also show this contextual information. - -
- -
Enhanced hover integration with GitHub Enterprise and GitLab Self-Managed
-
- -### Connecting GitHub Enterprise Server or GitLab Self-Managed - -To connect either integration: - -1. Open `settings.json`: - - Use the Command Palette (`Cmd`/`Ctrl` + `Shift` + `P`) > **Preferences: Open User Settings (JSON)** - -2. Add a `gitlens.remotes` entry specifying the domain and type: - -```json -"gitlens.remotes": [{ "domain": "git.corporate-url.com", "type": "GitHub" }] -``` - -Or - -```json -"gitlens.remotes": [{ "domain": "git.corporate-url.com", "type": "GitLab" }] -``` - -3. Open a repository from GitHub Enterprise Server or GitLab Self-Managed in VS Code. -4. Go to the [Remotes View](/gitlens/side-bar/#remotes-view). -5. Select **Connect to Remote**. - - If this option is missing, verify the format in your `settings.json` matches the example above. - -
- -
Connect to a GitHub Enterprise or GitLab Self-Managed instance
-
- -6. Provide a Personal Access Token (PAT) with the required scopes when prompted, and press **Enter** to complete the connection. - - - -*** - -## Jira Integration `PRO` - -The Jira Integration, connected through your GitKraken Account, enables Jira [Autolinks](/gitlens/gitlens-features#autolinks) wherever autolinks are supported in GitLens. Once connected, GitLens automatically converts Jira issue keys (e.g., `ABC-123`) in commit messages into clickable links. - -
- -
Jira autolinks in commit messages
-
- -
-

This feature is only available for Pro subscription tiers or higher.

-
- -To connect the integration: - -1. Open the GitLens Sidebar. -2. From the GitKraken Account view, select **Cloud Integrations**. -3. Choose **Jira Cloud**, and authorize access to your Atlassian Account. -4. Alternatively, visit your [Integration Settings](https://gitkraken.dev/settings/integrations?source=help_center&product=gitlens) in a browser. - -
- -
Connect Jira from GitKraken Cloud Integrations
-
- - -*** - -## Powerful Commands - -GitLens provides powerful commands to improve your workflow: - -- **Add Co-authors** (`gitlens.addAuthors`) — Add a co-author to the commit message input box. -- **Copy SHA** (`gitlens.copyShaToClipboard`) — Copy the commit SHA of the current line or the latest commit. -- **Copy Message** (`gitlens.copyMessageToClipboard`) — Copy the commit message from the current line or latest commit. -- **Copy Current Branch** (`gitlens.copyCurrentBranch`) — Copy the current branch name to the clipboard. -- **Switch to Another Branch** (`gitlens.views.switchToAnotherBranch`) — Quickly switch branches. -- **Compare References...** (`gitlens.compareWith`) — Compare two references. -- **Compare HEAD with...** (`gitlens.compareHeadWith`) — Compare HEAD with a selected reference. -- **Compare Working Tree with...** (`gitlens.compareWorkingWith`) — Compare the working tree with a selected reference. -- **Open Changes (difftool)** (`gitlens.externalDiff`) — Open file changes with the configured Git difftool. -- **Open All Changes (difftool)** (`gitlens.externalDiffAll`) — Open all working changes with the configured difftool. -- **Open Directory Compare (difftool)** (`gitlens.diffDirectoryWithHead`) — Compare working tree with HEAD using a difftool. -- **Open Directory Compare (difftool) with...** (`gitlens.diffDirectory`) — Compare with a selected reference. -- **Open File** (`gitlens.openWorkingFile`) — Open the working version of the current file. -- **Open Revision...** (`gitlens.openFileRevision`) — Open a selected file revision. -- **Open Revision from...** (`gitlens.openFileRevisionFrom`) — Open a revision from a specific reference. -- **Open Blame Prior to Change** (`gitlens.openBlamePriorToChange`) — Show blame for the prior revision of a line. -- **Open Changed Files** (`gitlens.openChangedFiles`) — Open all changed files in the working tree. -- **Close Unchanged Files** (`gitlens.closeUnchangedFiles`) — Close all files without changes. -- **Enable Debug Logging** (`gitlens.enableDebugLogging`) — Enable debug logging in the GitLens output. -- **Disable Debug Logging** (`gitlens.disableDebugLogging`) — Disable debug logging. -- **Copy as Patch** (`gitlens.copyPatchToClipboard`) — Copy patch data from views, changes, or stashes. -- **Apply Copied Patch** (`gitlens.applyPatchFromClipboard`) — Apply a patch from clipboard contents. - - -*** - -## Deep Links - -Deep Links are URLs that open specific GitLens resources, improving collaboration by sharing direct links to repositories, files, comparisons, and more. Resources that support Deep Linking include: - -- **Search & Compare** — Link to comparisons in the [Search & Compare view](/gitlens/side-bar/#search-compare-view). Right-click a comparison, hover over _Share_, and select _Copy Link to Comparison_. -- **GitKraken Workspaces** — Link to a [GitKraken Workspace](/gitlens/side-bar/#workspaces-☁%ef%b8%8f). Right-click a Workspace, hover over _Share_, and select _Copy Link to Workspace_. -- **Commit Graph** — Link to remote repositories, commits, branches, and tags in the [Commit Graph](gitlens/gitlens-features/#commit-graph-%60pro%60). Right-click the resource, hover over _Share_, and select _Copy Link to _. -- **Files or Lines** — Link to specific files or lines of code. Right-click highlighted lines or a file, hover over _Share_, and select _Copy vscode.dev Link_. -- **Cloud Patches** — Link to a [Cloud Patch](/gitlens/gitlens-features/#cloud-patches-preview-%e2%98%81%ef%b8%8f). After generating a Cloud Patch, click _Copy Link_ from the success prompt. - -
- -
Example of generating and using Deep Links
-
- -*** - -## Menus & Toolbars - -
- -
GitLens menu and toolbar options
-
- -GitLens provides [customizable](/gitlens/gitlens-settings/#elementor-toc__heading-anchor-16) menu and toolbar contributions to let you control where GitLens commands appear. You can easily manage these settings via the [interactive settings editor](/gitlens/gitlens-settings/). - -For example, disabling **Add to the editor group toolbar** removes those items from the toolbar: - -
- -
Editor group toolbar items removed
-
- -You can also expand each section to customize visibility and placement more granularly. - -*** - -## Modes - -GitLens supports [user-defined](#modes-settings- 'Jump to the Modes settings') modes for quickly toggling between sets of settings. - -- Shows the active mode in the **status bar** ([optional](#modes-settings- 'Jump to the Modes settings'), enabled by default) - - **Toggle Review Mode** (`gitlens.toggleReviewMode`) — Quickly toggle Review mode. -- **Switch Mode** (`gitlens.switchMode`) — Quickly switch between modes. -- **Zen Mode** — Disables many visual elements for a focused experience. - - **Toggle Zen Mode** (`gitlens.toggleZenMode`) — Toggle Zen mode. -- **Review Mode** — Enables visual elements for code review. - -### Experimental Multi-diff Editor - -VS Code 1.86 or later is required for these capabilities. - -#### Commands using Multi-diff - -- **Open Folder Changes with Revision...** and **Open Folder Changes with Branch or Tag...** via Command Palette, Explorer, and Source Control views. -- Inline **Open All Changes** in commits, stashes, and comparison views. -- **Open All Changes** and **Open All Changes with Working Tree** — Use the new multi-diff editor. -- **Open All Changes, Individually** and **Open All Changes with Working Tree, Individually** — Provide legacy behavior. +--- +title: GitLens Features +description: Learn how to use GitLens autolinks, terminal links, powerful Git commands, remote provider integrations, and UI customizations to enhance your Git workflow in VS Code. +taxonomy: + category: gitlens +--- +Last updated: August 2026 + +Features marked with `PRO` require a [trial or paid plan](https://www.gitkraken.com/gitlens/pricing?source=help_center&product=gitlens) for use on privately hosted repositories. + +Features marked with `PREVIEW` require a GitKraken Account, with access based on your [plan level](https://www.gitkraken.com/gitlens/pricing?source=help_center&product=gitlens) (Community, Pro, etc). + +*** + +## Revision Navigation + +
+ GitLens revision navigation animated demo +
Step through revisions using built-in navigation commands
+
+ +Revision Navigation allows you to quickly compare different versions of a file or specific lines. + +Available commands: + +- **Open Changes with Previous Revision** (`gitlens.diffWithPrevious`) + Compare the current file or revision with the previous commit. + +- **Open Changes with Next Revision** (`gitlens.diffWithNext`) + Compare the current file or revision with the next commit. + +- **Open Line Changes with Previous Revision** (`gitlens.diffLineWithPrevious`) + View how a specific line changed compared to the previous commit. + +- **Open Changes with Working File** (`gitlens.diffWithWorking`) + Compare the committed version of the file with your working directory. + +- **Open Line Changes with Working File** (`gitlens.diffLineWithWorking`) + See the difference between the last committed line and its current version. + +- **Open Changes with Branch or Tag...** (`gitlens.diffWithRevisionFrom`) + Compare the file against another revision from a selected reference. + +- **Open Changes with Revision...** (`gitlens.diffWithRevision`) + Compare the current file with any revision of the same file. + + +*** + +## Current Line Blame + +
+ GitLens current line blame showing inline annotation +
Blame annotation showing author, date, and commit message
+
+ +Current Line Blame adds a subtle, [customizable](/gitlens/settings/#current-line-blame-settings), and [themable](/gitlens/settings/#themable-colors) annotation at the end of the active line. + +By default, the annotation displays: + +- The author of the most recent commit +- The commit date +- The commit message + +You can control visibility with the command: + +- **Toggle Line Blame Annotations** (`gitlens.toggleLineBlame`) + + +*** + +## Git CodeLens + +
+ GitLens CodeLens annotations above file and code blocks +
Inline Git insights for authorship and history
+
+ +Git CodeLens displays inline Git insights at the top of each file and above code blocks (enabled by [default](/gitlens/settings/#git-codelens-settings), and [customizable](/gitlens/settings/#git-codelens-settings)). + +### CodeLens Types + +- **Recent Change** + Shows the author and date of the most recent commit for the file or block. + - Click to open a **quick pick menu** with commit details and actions (e.g., compare, explore history). + +- **Authors** + Displays the number of contributors and the most prominent author. + - Click to toggle Git blame annotations across the file. + - Automatically hides if there's only one author (to reduce visual noise). + +### CodeLens Behavior + +Click behavior for each CodeLens is fully [customizable](/gitlens/settings/#git-codelens-settings). You can choose from: + +- Toggle file blame annotations +- Compare the current commit to the previous one +- Show file or commit detail menus +- View commit history for the file or branch + +### Related Command + +- **Toggle Git CodeLens** (`gitlens.toggleCodeLens`) + Shortcut: `Shift+Alt+B` + +*** + +## Status Bar Blame + +
+ Status bar showing Git blame annotation with author and date +
Quick access to blame details in the VS Code status bar
+
+ +The **Status Bar Blame** displays Git blame details for the current line directly in the VS Code status bar. This feature is enabled by default and fully customizable. + +### Default Behavior + +- Displays the **author** and **date** of the last commit affecting the current line. +- Clicking the status bar opens a **quick pick menu** with commit actions (compare, explore history, etc.). + +### Customizable Click Behavior + +You can configure what happens when the status bar item is clicked: + +- Toggle file blame annotations +- Toggle Git CodeLens on and off +- Compare the line’s commit to the previous one +- Compare the line’s commit to the working tree +- Show a quick pick menu with: + - Commit details and actions *(default)* + - File-level commit details + - Commit history of the current file + - Commit history of the current branch + + +*** + +## Hovers + +GitLens provides rich, [customizable](/gitlens/settings/#hover-settings) hover annotations to surface Git information directly in your editor. These hovers are enabled by default and support both blame and diff insights. + +### Current Line Hovers + +
+ Current line hover in GitLens +
Git blame hover shown over the current line
+
+ +#### Details Hover + +
+ GitLens current line details hover with commit info and actions +
Expanded commit info and quick actions
+
+ +Displays detailed commit information for the current line. + +Features: + +- **Automatic issue linking** for Bitbucket, Gerrit, Gitea, GitHub, GitLab, and Azure DevOps. +- **Quick-action bar** with commands: + _Open Changes_, _Blame Previous Revision_, _Open on Remote_, _Invite to Live Share_, _Show More Actions_. +- Click the **commit SHA** to trigger the _Show Commit_ command. + +#### Changes (Diff) Hover + +
+ GitLens diff hover showing current vs. previous line version +
View the previous version of a changed line
+
+ +Displays the previous version of the current line. + +- Click **Changes** to run the _Open Changes_ command. +- Click commit SHAs to open _Show Commit_ views. + +### Annotation Hovers + +
+ GitLens annotation hover example +
Hover insights while annotating with blame
+
+ +Accessible when blame annotations are active, these hovers provide the same detail and diff options. + +#### Details Hover + +
+ Details hover during annotation +
Commit metadata and action menu per line
+
+ +Shows rich commit details per line with: + +- Automatic issue linking +- Quick-action command bar +- Clickable commit SHA to open commit details + +#### Changes (Diff) Hover + +
+ Changes hover during annotation +
Inline diff hover showing previous line content
+
+ +Reveals the previous version of each annotated line. + +- Click **Changes** to run _Open Changes_. +- Click SHAs to open the _Show Commit_ view. + + +*** + +## File Blame + +
+ GitLens file blame annotations in the editor gutter +
View who last modified each line and when
+
+ +File Blame adds [customizable](/gitlens/settings/#gutter-blame-settings), [themable](/gitlens/settings/#themable-colors) inline annotations that show the commit and author responsible for each line in a file. + +### Features + +- Displays **commit message** and **commit date** per line (enabled by [default](/gitlens/settings/#file-blame-settings)). +- Adds a **heatmap (age) indicator** along the right edge to show how recently each line was changed. + _(See [File Heatmap](/gitlens/gitlens-features/#file-heatmap) for more info.)_ +- Easily toggle annotations with: + + - **Command**: `gitlens.toggleFileBlame` + - **Shortcut**: Alt+B + - **Dismiss**: Escape + + +*** + +## File Changes + +
+ File changes annotations highlighting modified lines +
Highlight unpublished or most recent changes
+
+ +The File Changes annotation highlights lines that have been changed either locally (unpublished) or by the most recent commit. + +This feature is [customizable](/gitlens/settings/#file-changes-settings) and [themable](/gitlens/settings/#themable-colors), and is designed for quick visual inspection of file updates. + +### Features + +- **Highlights local changes** and recent commit modifications. +- Toggle with the command: `gitlens.toggleFileChanges` +- Press Escape to disable the annotations + + +*** + +## File Heatmap + +
+ GitLens file heatmap on the right gutter of the editor +
Visualize how recently each line was modified
+
+ +The File Heatmap adds a color-coded bar to the edge of your file, helping you quickly spot older versus more recent changes. + +### Features + +- Heatmap colors are [customizable](/gitlens/settings/#file-heatmap-settings) and reflect line age: + - **Hot (bright)** for recent changes + - **Cold (dim)** for older changes + _(Lines default to “cold” after 90 days.)_ +- Brightness adjusts dynamically based on the **median age** of all changes in the file. +- Toggle with the command: `gitlens.toggleFileHeatmap` +- Press Escape to hide the heatmap annotations + +*** + +## Code Suggest `PREVIEW` + +GitKraken Code Suggest simplifies code review by enabling you to propose edits across an entire project—not just the lines changed—in GitLens, GitKraken Desktop, or [gitkraken.dev](https://gitkraken.dev). + +When a pull request is open, you can make suggestions that collaborators can review and apply directly to the PR. + +
+

Note: Code Suggest is currently supported only for repositories hosted on github.com.

+
+ +
+ GitLens Code Suggest UI showing a PR suggestion in progress +
Suggest changes beyond just modified lines
+
+ +### How to Create a Code Suggestion + +1. Open the [GitLens Inspect Overview](/gitlens/side-bar/#overview) for the repository. +2. Check out a branch that has an open pull request. +3. Click **Start Review for PR #PR**. +4. Modify and save any files to include in the suggestion. +5. When ready, select **Suggest Changes for PR**, add a title, and click **Create Code Suggestion**. + +
+ Creating a code suggestion in GitLens +
Create a suggestion from your local changes
+
+ +Once submitted, the pull request will receive a comment with two options: + +- **Code Suggestion for #PR** — opens in gitkraken.dev +- **Locally on your machine** — opens in GitLens or [GitKraken Desktop](/gitkraken-client/pull-requests/#review-code-and-suggest-changes) + +
+ Comment with code suggestion options +
Collaborators can choose where to review and apply suggestions
+
+ +### Accepting a Suggestion Locally + +1. Open the suggestion in GitLens or GitKraken Desktop. +2. Review each modified file. +3. Select **Apply** to apply the patch to your current branch. + Or use the dropdown to **Apply to a Branch**. + +
+ Accepting suggestions from GitLens +
Apply suggestions directly to a local or new branch
+
+ +### Accepting a Suggestion on gitkraken.dev + +1. Select **Code Suggestion for #PR** in the PR comment. +2. Review the changes on gitkraken.dev. +3. Click **Commit Suggestions** to commit the patch directly to the PR’s branch. + +
+ Committing suggestions from gitkraken.dev +
Accept changes and push them to the remote branch
+
+ + +*** + +## Cloud Patches `PREVIEW` + +### What Are Cloud Patches and Why Use Them? + +Cloud Patches are Git patches that GitKraken securely stores for easy sharing across GitLens, GitKraken Desktop, and the GitKraken CLI. The patch is uploaded directly from your machine into secure cloud storage. + +This feature enables early collaboration—before a pull request is created—by letting you share in-progress work with your team. It helps streamline feedback cycles and reduce delays in PR reviews. + +--- + +### How to Set Up Cloud Patches + +Cloud Patches are enabled by default, but you can manage this per client. + +1. Open the Command Palette: + `Ctrl`/`Command` + `Shift` + `P` → **Preferences: Open User Settings (JSON)** + +2. Add the following line to your settings: + + "gitlens.cloudPatches.enabled": true + +To disable Cloud Patches, change the value to `false`. + + +### How to Work with Cloud Patches + +Cloud Patches are accessible from the **Cloud Patches** view in the GitLens sidebar. + +
+ GitLens Cloud Patch creation screen +
Create a patch directly from your sidebar
+
+ +You can create a Cloud Patch from: + +- Working Changes +- Commits +- Stashes +- Comparisons + +To create one, use **Share as Cloud Patch** from the command palette or the **Share** submenu in applicable GitLens views. + +
+ Share as Cloud Patch in context menu +
Share patches from a variety of Git sources
+
+ +#### Sharing Options + +Choose how your patch can be accessed: + +- **Anyone with the link** – Public access without login. +- **Anyone in my org** – Restricted to users in your GitKraken organization (GitKraken login required). +- **Only collaborators** – Restricted to selected organization members. Use **Invite** to choose recipients. + +Cloud Patches shared with you appear under the **Shared with Me** section. + +
+

Note: If you're a member of multiple organizations, you can switch organizations from the GitKraken Account view.

+
+ +
+ Cloud patch share dialog with access levels +
Control access to shared patches by role
+
+ +You can also apply Cloud Patches directly from a shared URL. Simply click or paste the link, then follow GitLens prompts to apply it to your working directory or to a new/existing branch. + +
+ Apply a cloud patch animation +
Apply patches seamlessly to your current repo
+
+ +To delete a Cloud Patch, right-click it and choose **Delete Cloud Patch...**. + +
+ Delete option in GitLens Cloud Patch view +
Remove unused patches with one click
+
+ + +### Self-Hosting Cloud Patch Data + +If you prefer not to store Cloud Patch data on GitKraken servers, you can configure GitLens to use your own AWS S3 storage. + +Learn how to configure this in our [Self-Hosting Guide](/gk-dev/gk-dev-home/#self-hosted). + +*** + +## Commit Graph `PRO` + +The Commit Graph is the main view in the GitLens sidebar, providing an interactive visualization of your repository history. Built on a high-performance rendering engine, it shows commits, branches, and contributors in one place, helping you understand project activity and make informed decisions quickly. + +
+ Commit Graph in GitLens showing branches and commits +
Explore your full Git history at a glance
+
+ +--- + +### How to Open the Commit Graph + +The Commit Graph opens automatically when you click the GitLens icon in the Activity Bar. You can also open it from the Command Palette: + +1. Open the Command Palette: + Cmd/Ctrl + Shift + P + +2. Type: + `GitLens: Show Commit Graph` + +
+ Using the Command Palette to open the GitLens Commit Graph +
Launch the graph directly from the Command Palette
+
+ +--- + +### Commit Graph Header + +At the top of the graph, you’ll see: + +- **Repository name** +- **Checked-out branch** +- **Last fetched timestamp** + +From here, you can: + +- Click the branch name to switch branches +- Click **Fetch** to update commit data + +
+ Commit Graph header with repo name, branch, and fetch option +
Access key branch controls directly from the header
+
+ +
+

Note: The Commit Graph is available to all users on public or local repositories without needing an account.

+ Private repository access requires a GitLens Pro subscription or trial.

+

We welcome your input—join the discussion on GitHub.

+
+ +### Configuration and Layout + +The Commit Graph offers extensive layout and configuration options so you can tailor the view to fit your workflow. + +--- + +#### Column Customization + +All columns in the Commit Graph are fully customizable: + +- Drag and drop column headers to rearrange the layout. +- Right-click a column header to toggle columns on or off. +- The **Changes** column visualizes added and deleted lines per commit. The `gitlens.graph.changesColumn.mode` setting controls the display style: `numbers` (numeric counts), `squares` (colored blocks), `bar` (horizontal bar), or `bipolar` (split additions/deletions bar). + +
+ Column customization context menu in Commit Graph +
Customize visible columns with right-click options
+
+ +--- + +#### Panel vs. Editor Layout + +You can choose where the Commit Graph appears: + +- **Panel Layout** — displays the graph in the bottom panel (next to Terminal) with the embedded details panel. +- **Editor Area Layout** — shows the graph in a standard VS Code editor tab. + +To switch layouts: + +1. Click the gear icon in the top-right of the Commit Graph. +2. Select **Prefer Commit Graph in Panel Layout** or **Prefer Commit Graph in Editor Area**. + +You can even open both layouts simultaneously. + +
+ Layout settings for Commit Graph +
Choose where the graph displays: Panel or Editor
+
+ +--- + +#### Compact Layout + +For smaller screens or simplified views: + +- **Compact Graph Column Layout** reduces the visual size of the graph. +- The **Author** column shows avatars when minimized. +- Columns display icons instead of truncated text when resized to narrow widths. + +To enable the compact graph layout, right-click the **Graph** column header and select **Compact Graph Column Layout**. + +
+ Compact layout in Commit Graph +
Enable compact mode for cleaner visuals
+
+ +--- + +#### Scroll Markers + +Scroll markers appear alongside the Commit Graph scrollbar to highlight: + +- Checked-out branches +- Selected rows +- Search matches + +They provide quick navigation to key locations like `HEAD` or specific refs. + +You can toggle scroll markers in [Commit Graph settings](/gitlens/gitlens-features/#settings). + +
+ Scroll markers in the GitLens Commit Graph +
Navigate instantly using visual markers
+
+ + +### Settings + +You can adjust Commit Graph preferences through the GitLens Settings panel. + +1. Open the Command Palette: + Cmd/Ctrl + Shift + P + +2. Search for: + `GitLens: Open Settings` + +
+ Commit Graph settings in GitLens +
Access GitLens settings from the Command Palette
+
+ +--- + +### Rich Commit Search + +The Commit Graph includes a powerful search bar to locate commits by message, author, file, or even specific code changes. + +#### Natural Language Search `PRO` + +You can type plain-language queries (e.g., "changes to the login page last week") and GitKraken AI converts them into structured Git search operators automatically. Natural language search works in the Commit Graph search bar, the Search & Compare view, and the Search Commits command. + +#### Search Prefixes + +Use the following search prefixes: + +- `Commit:` +- `Message:` +- `Author:` +- `File:` +- `Change:` +- `@me` (to filter commits made by your user) +- Time-based operators such as `after:` and `before:` to scope results by date + +
+ Search bar filtering commit history in the Commit Graph +
Search commit history with advanced filtering
+
+ +Use keyboard shortcuts to navigate results: + +- F3 / Cmd+G — next result +- Shift+F3 / Shift+Cmd+G — previous result +- Hold Shift and click arrows to jump to first or last match + +
+ Navigating through commit search results +
Jump through results using keyboard or search controls
+
+ +You can also refine results with: + +- **Match all** +- **Match case** +- **Regular expression** + +
+ Commit Graph search filter toggles +
Adjust search filters for more precision
+
+ +--- + +### Full Context Menu Support + +The Commit Graph supports right-click actions on branches, commits, tags, authors, and column headers. + +
+ Right-click menu on commit for extra options +
Use context menus for advanced Git actions
+
+ +Popular options include: + +- **Compare with Common Base** — View changes between the current and selected branches based on their shared ancestor. +- **Open All Changes with Common Base** — Launch a multi-diff view showing all changes that would be merged. +- **Squash**, **Drop**, **Reword**, and **Modify Commits** — Run interactive rebase operations directly from the graph without opening the Rebase Editor. Select one or more commits, right-click, and choose the desired operation. +- **Undo Commit** — Appears as an inline action on the HEAD commit row to soft-reset the latest commit. +- **Push to Commit** — Appears as an inline action on unpushed commit rows to push up to that specific commit. + +--- + +### Compare Mode `PRO` + +Compare mode lets you view comparisons directly inside the Commit Graph rather than switching to the Search & Compare view. Select two references to see Ahead, Behind, and All views inline within the graph details panel. + +--- + +### Compose Mode `PRO` + +Compose mode integrates commit composition directly within the Commit Graph. Select the WIP row to see your working changes, then switch to Compose mode in the details panel to create commits from your changes or restructure branch history using AI. + +
+ Commit Graph in Compose mode showing the commit composer panel with message input and staged files +
Compose mode in the Commit Graph details panel
+
+ +Click the **Compose** button to generate an AI-assisted commit message based on your staged changes, or write your own message manually. + +
+ Commit Graph composer with AI-generated commit message ready for review +
AI-generated commit message populated in the composer
+
+ +--- + +### Multi-File Selection + +The Commit Graph and Inspect panels support multi-file selection using Shift-click and Ctrl/Cmd-click in WIP, commit details, compare, compose, and review file lists. Selected files can be batch-operated on with stage, unstage, discard, and stash actions. Inline per-file action buttons are also available for individual operations. + +### Pull Request Indicators + +For GitHub and GitLab, GitLens displays a **Pull Request icon** on branches with active pull requests. To enable this: + +1. Connect your account using [rich integration settings](/gitlens/settings/#remote-provider-integration-settings). +2. The icon will appear next to branches in the graph once linked. + +
+ Pull request icon displayed in Commit Graph +
Active pull requests are shown with branch-level icons
+
+ +--- + +### Hiding Remotes, Branches, or Tags + +You can hide individual remotes, branches, or tags from the Commit Graph to reduce clutter and focus your view. + +- **To hide**: Hover over any ref and click **Hide**. +- **To show again**: Use the **Hide** panel at the top of the graph and reselect the ref. + +
+ Hiding Git refs in the Commit Graph +
Use the “Hide” option to declutter the graph
+
+ +#### Filtering Options + +You can further control what is shown using the filter dropdown: + +- **Show Current Branch Only** — Display the current branch and its upstream (minimal view) +- **Show All Local Branches** — Default view showing all local refs +- Toggle visibility of: + - Remote-only branches + - Tags + - Stashes +- Option to **dim merge commits** + +
+ Commit Graph filter options +
Customize your view with filter presets
+
+ +--- + +### Minimap (Experimental) + +The **Minimap** gives you a visual summary of repository activity at a glance: + +- Quickly locate `HEAD`, remotes, tags, and stashes +- Jump to any region in the graph using visual cues +- Toggle it via the **Minimap icon** in the top right + +
+ Minimap view in Commit Graph +
Quickly navigate with the Commit Graph Minimap
+
+ +#### Minimap Settings + +Customize the Minimap via the **graph icon dropdown**: + +- Toggle between: + - **Commits view** + - **Lines changed view** +- Show or hide: + - Markers for branches, tags, stashes, search results + +
+ Minimap settings in Commit Graph +
Choose your preferred Minimap display and markers
+
+ +#### Minimap Legend + +| Element | Description | +|--------|-------------| +| **Green lines** | `HEAD` | +| **Yellow lines** | Search results | +| **Blue blocks (top)** | Remote branches | +| **Brown blocks (top)** | Tags | +| **Pink blocks (bottom)** | Stashes | +| **Blue blocks (bottom)** | Local branches | +| **Highlighted area** | Current view region | + +
+

Note: We welcome your feedback on the Minimap. Share your thoughts on the GitLens GitHub Discussions.

+
+ + +*** + +## Launchpad `PRO` + +Launchpad organizes pull requests (PRs) by status to help you identify bottlenecks and take prioritized actions. This streamlined view allows you to manage PRs quickly, directly within VS Code. + +
+ Launchpad PR overview +
View and act on PRs based on current status
+
+ +
+

Launchpad currently supports GitHub.com and GitLab.com repositories. To use it, connect your Git provider using the GitHub or GitLab Integration.

+
+ +--- + +### Accessing Launchpad + +- From the **Command Palette**: `Command/Ctrl + Shift + P` → `GitLens: Open Launchpad` +- Or select the **Pull Request status bar item** in VS Code + +
+ Opening Launchpad from status bar +
Open Launchpad from the status bar or Command Palette
+
+ +--- + +### Using Launchpad + +View PRs by grouped statuses: +- Ready to merge +- Blocked +- Requires follow-up +- Needs your review +- Waiting for review +- Draft +- Snoozed + +Click a PR to: +- View full details +- Open in your browser +- Merge (if eligible) +- Switch to the branch or open in a worktree + +
+ PR detail view in Launchpad +
Interact with pull requests directly in VS Code
+
+ +You can also start or review [Code Suggestions](/gitlens/gitlens-features/#code-suggest-preview) directly from the PR action menu. + +
+ Launchpad with Code Suggest options +
Suggest code edits from within the Launchpad
+
+ +*This feature is available through the [Gitkraken MCP](https://help.gitkraken.com/mcp/mcp-tools-reference/)* + +--- + +### Start Review `PRO` + +The **Start Review** command (`gitlens.startReview`) provides a guided wizard for beginning a pull request review. It walks you through selecting a PR from your connected integration, choosing whether to check out the branch or create a worktree, and optionally launching an AI chat pre-filled with a review prompt. + +Access it from the Command Palette: `GitLens: Start Review` + +--- + +### Pin or Snooze PRs + +Use the pin icon to keep important PRs in the **Pinned** group. + +Use the snooze icon to move less urgent PRs into the **Snoozed** group. + +Click the icon again to unpin or unsnooze as needed. + +
+ Pin or snooze pull requests +
Pin or snooze PRs to manage your workflow
+
+ +
+

Note: Launchpad prioritizes items requiring action by elevating them to the top of the list. This behavior may change in future updates.

+
+ +
+

This feature is only available on GitLens Pro subscription tiers or higher.

+
+ + +*** + +## Visual History + +Visual History (formerly Visual File History) provides a clear timeline of changes—showing when, what, and who modified your code—helping you quickly understand how a file, folder, repository, or branch evolved. + +Visual History supports multiple scopes: + +- **File** — View the history of a single file +- **Folder** — View the history of a directory +- **Repository** — View the history of the entire repository +- **Branch** — Slice the history by branch to focus on specific lines of work + +To open Visual History: +- Use the GitLens **Inspect Sidebar**, or +- From the **Command Palette**: `Cmd/Ctrl + Shift + P` → `GitLens: Show Visual History View` + +
+ Visual File History overview +
Track authorship, size, and timing of file changes
+
+ +--- + +### How to Read the Graph + +- **Y-axis (left):** Contributors, shown in individual swim lanes +- **X-axis:** Timeline of commits +- **Bubbles:** Color-coded per author; bubble size reflects the magnitude of changes +- **Bars (right y-axis):** Line additions (green) and deletions (red) + +Hover over a bubble or bar for detailed insights. + +
+ Hover over commit for details +
View commit size, author, and message on hover
+
+ +
+

The Community plan supports Visual History only on public and local repositories.

+
+ + +*** + +## GitKraken AI + +GitKraken AI enhances your development workflow with automated commit messages, intelligent stash descriptions, and code change explanations. + +--- + +### AI-Generated Commit Messages + +Automatically generate descriptive commit messages based on staged changes. + +
+ Generating AI commit messages +
AI-generated commit messages from staged changes
+
+ +To use: +- Stage your changes. +- Open the **Commit Graph** and click **Generate Commit Message**, or +- Use the Command Palette: `GitLens: Generate Commit Message (Experimental)` + +GitKraken AI will analyze the diff of staged changes to generate a message. You may provide additional context in the commit box to improve results. + +You can customize behavior using [`gitlens.ai` settings](/gitlens/gitlens-settings/#misc-settings) for provider, model, and prompt preferences. + +
+

Pro users and above can optionally use a custom API key to connect to a different AI provider. GitKraken AI currently uses the Google Gemini model.

+
+ +--- + +### AI Stash Messages `PRO` + +Available in **Pro**, **Advanced**, and **Business** plans. + +Automatically generate meaningful stash descriptions to make your stashes easier to identify later. + +**How to access:** +- From the Command Palette: `GitLens: Generate Stash Message with AI` +- During stash creation: Use the AI option in the stash interface +- In the Stash view: Generate AI-powered descriptions for existing stashes + +--- + +### AI Explanations `PREVIEW` + +Let GitKraken AI help explain complex changes across your repo with natural language summaries. + +
+ AI branch summary explanation +
AI summaries in rendered markdown for improved clarity
+
+ +Standalone **Explain** commands provide markdown summaries for: +- Commits — **Explain Commit** +- Branches — **Explain Branch** +- Working changes — **Explain Working Changes** +- Stashes — **Explain Stash** + +**Where to find it:** +- Commit Graph +- Command Palette +- GitLens views: Commits, Branches, Stashes, Search & Compare +- Editor blame hovers (sparkle Explain button) + +With GitKraken AI explanations, you can quickly understand: +- The purpose and impact of individual commits +- What changed across all commits in a branch +- What you've modified in your working directory +- What your previous stashes contain +#### AI Commit Explanations `PRO` + +*Available in:* **Pro**, **Advanced**, and **Business** plans + +Understand the purpose and context of commits with AI-generated summaries. These explanations help you grasp the intent behind complex commits without manually reviewing all changes. + +**How to access:** +- **Commit Details** view: See the AI explanation panel +- **Cloud Patch Details** view: View AI insights alongside commit data +- **Commit Review**: Generate explanations for any selected commit + +--- + +### AI Changelog Creation `ADVANCED` + +*Available in:* **Advanced** and **Business** plans only + +Automatically generate detailed and structured changelogs from a set of selected commits—ideal for maintaining release documentation. + +**How to access:** +- **Search/Compare** view: Click the inline button on the commits line +- **Commit Graph**: Select multiple commits, right-click, then choose **Generate Changelog** +- **Command Palette**: `GitLens: Generate Changelog from Commits` + +
+

More questions about GitKraken AI? See the GitKraken AI FAQ for additional details.

+
+ +### AI Generate Commits `PRO` + +Generate well-structured commits from your working tree changes using AI analysis. The **Generate Commits** command analyzes your staged and unstaged changes, groups them logically, and creates commits with descriptive messages. A first-time confirmation dialog explains what the command will do, and an **Undo** button is available after generation to revert if needed. + +
+ AI commit message generation flow showing staged changes then an AI-generated message appearing +
Generate AI commit messages from the Source Control view
+
+ +### AI Rebase `PRO` + +The **AI Rebase** command restructures commits on an existing branch onto a target commit using AI-generated commit grouping and messages. Like Generate Commits, it includes an undo button and a first-time confirmation dialog. Both commands produce markdown explanation documents summarizing the changes made. + +### AI Auto Rebase `PRO` + +AI Auto Rebase (`gitlens.ai.autoRebase`) takes interactive rebasing further by automatically resolving conflicts end-to-end. When a rebase encounters conflicts, AI analyzes each conflict and resolves it based on a configurable confidence threshold. + +Key capabilities: + +- **Automatic conflict resolution** — AI resolves merge conflicts during rebase without manual intervention +- **Confidence threshold** — Configure `gitlens.ai.autoRebase.confidenceThreshold` (0 to 1) to control how confident the AI must be before auto-resolving a conflict +- **Custom instructions** — Use `gitlens.ai.resolveConflicts.customInstructions` to provide project-specific guidance for conflict resolution +- **Full undo support** — Undo the entire auto-rebase with `gitlens.ai.autoRebase.undo` if the results are not satisfactory +- **Rebase summary sheet** — After completion, a summary sheet shows what was resolved and how + +Access it from the Commit Graph context menu or the Command Palette: `GitLens: AI Auto Rebase` + +### Commit Composer View `Pro` +The Commit Composer has evolved from a simple one-step process into a comprehensive drafting and review experience. Previously, AI would analyze your changes and immediately create commits. Now, the Commit Composer gives you complete control over the composition process, with options to auto-compose with AI or compose manually. It is integrated directly into the Commit Graph details panel as Compose mode, and is also available as a standalone view. + +Join the [Commit Composer discussion](https://github.com/gitkraken/vscode-gitlens/discussions/4530) and provide feedback. + +
+ Commit Composer view showing draft commits with AI-generated messages and staged file grouping +
The Commit Composer drafting view
+
+ +#### Interactive Draft Commits + +When composing commits, GitLens now creates "draft" commits that you can review, modify, and refine before applying them to your repository. This new workflow lets you: + +- **Preview before committing**: See exactly what will be committed before it touches your repository +- **Switch Models**: Try composition with different AI models +- **Guide the AI**: Provide custom instructions to match your team's conventions and preferences +- **Iterate and refine**: Regenerate individual messages or entire commit compositions +- **Review and edit**: Manually tweak any commit message or approach + +
+ Commit Composer with AI-composed commit message populated and ready for review +
AI-composed commit message ready for review
+
+ +You can launch the new Commit Composer view from several places in GitLens: + +- **GitLens commit details view** +- **Context menu on the WIP row** in the GitLens Commit Graph +- **Commit Graph details panel**: Switch to **Compose** mode +- **✨ icon in the SCM view header** +- **Command palette**: Search for "Compose Commits" + +
+ Commit Graph toolbar showing the Compose button entry point +
Access Commit Composer from the graph toolbar
+
+ +
+ Commit Graph WIP details panel with Compose and Review mode toggle chips +
Or switch to Compose mode in the WIP details panel
+
+ +The foundation is now in place for even more powerful composition features in future releases, including intuitive drag-and-drop functionality for moving lines and hunks between commits, creating new draft commits on the fly, and reordering commit sequences. + +Whether you prefer to let AI handle the heavy lifting or want granular control over every detail, Commit Composer provides the flexibility to create well-structured commit histories that make code reviews more effective and repository history easier to understand. + +### Commit Composer: Branch Recomposition + +Commit Composer now lets you clean up and reorganize commits on existing branches, making it perfect for preparing pull requests or refining your commit history before pushing. + +
+ Commit Graph showing branch topology for AI-assisted branch recomposition +
Recompose an entire branch from the Commit Graph
+
+ +#### Recompose Entire Branches + +Open Commit Composer from any branch in the Commit Graph (or anywhere branches appear in GitLens) to inspect and reorganize its commits. The composer creates draft commits you can review before applying changes to your repository. + +**Auto-Recompose with AI**: Let AI analyze your branch and restructure commits into logical, well-documented units. Choose your preferred model and provide custom instructions to match your team's conventions. (Pro tip: Set default instructions in the "Generate Commits: Custom Instructions" setting to save time.) + +**Manual Control**: Review AI suggestions, regenerate specific commit messages, or manually edit messages and change organization. The composer gives you complete flexibility to craft the commit story that works best. + + + +#### Enhanced Composer Capabilities + +Commit Composer now handles edge cases that previously blocked composition: + +- **Untracked files**: Working changes now include untracked files, so all modifications can be composed together +- **New repositories**: Compose your initial commits even before a base commit exists +- **Performance boost**: Significantly faster rendering when working with changes across many files + +### Commit Composer: Selective Recomposition + +Commit Composer now lets you recompose specific commits within a branch, giving you precise control over cleaning up your commit history. + +
+ Commit Graph showing selective commit recomposition with multiple commits selected +
Select specific commits to recompose
+
+ +Previously, you could only recompose all working changes or an entire branch. Now you can select specific commits that need refinement—like those quick "wip" or "fix" commits made during rapid iteration—and let AI restructure just those changes with better messages. + +Select multiple contiguous commits on the same branch using Shift or Cmd click, then right-click and choose "Recompose Selected Commits." Commit Composer opens with only your selected commits as drafts, ready for AI-powered or manual refinement. + +Commit Composer is also more discoverable, with a new button on the WIP row in the Commit Graph that opens the composer for all working directory changes. Additionally, when rebasing, you can now switch directly into Commit Composer from the Rebase Editor, canceling your rebase to let AI handle the composition instead. + +
+ WIP row in the Commit Graph with Compose button for working directory changes +
Open Commit Composer from the WIP row
+
+ +### Compose and Recompose Commands + +Commit Composer can also be launched via dedicated commands: + +- **Compose Commits** (`gitlens.compose`) — Opens the Commit Composer for working changes in the current repository, or from a Compose mode entry in the Commit Graph details panel. +- **Recompose Branch** (`gitlens.recomposeBranch`) — Opens the Commit Composer for an entire branch, allowing AI to restructure all commits. +- **Recompose from Commit** (`gitlens.recomposeFromCommit`) — Recomposes from a specific commit onward. +- **Recompose Selected Commits** (`gitlens.recomposeSelectedCommits`) — Recomposes only the selected commits on a branch. + +These commands are available from the Commit Graph context menu, branch context menus throughout GitLens, and the Command Palette. Coach marks guide first-time users through the workflow. + +*** + +## Git Command Palette + +
+ GitLens Git Command Palette showing guided step-by-step command options +
Guided Git commands through the Command Palette
+
+ +Adds a [customizable](/gitlens/settings/#git-command-palette-settings) Git Command Palette (`gitlens.gitCommands`) for guided, step-by-step access to many common Git commands. Quickly navigate Git actions, explore commit history, manage stashes, and more—all through intuitive, confirmable menus. + +--- + +### Quick Commit Access + +- **Show Branch History** (`gitlens.showQuickBranchHistory`): Explore the commit history of any selected branch. + + + +- **Show Current Branch History** (`gitlens.showQuickRepoHistory`): View the commit history of your current branch. +- **Show File History** (`gitlens.showQuickFileHistory`): Access the full commit history of the current file. The File History view supports a **contributors mode** (`gitlens.views.fileHistory.mode`) that shows all contributors to the file instead of the commit list. + + + +- **Search Commits** (`gitlens.showCommitSearch`): Use a quick pick menu to search by: + + - Message: `` + - Author: `@` + - Commit SHA: `#` + - File path or glob: `:` + - Patch changes: `~` + + + + Refer to the [Git log documentation](https://git-scm.com/docs/git-log) for advanced usage. + +- **Show Commit Details** (`gitlens.showQuickCommitDetails`): Review commit information and actions. + + + +- **Show Line Commit Details** (`gitlens.showQuickCommitFileDetails`): Explore the file's commit and take action on it. + + + + +### Quick Stash Access + +
+ +
+ +
+ +
+ +- Adds a _Show Stashes_ command (`gitlens.showQuickStashList`) to show a quick pick menu to explore your stashes. + +--- + +### Quick Status Access + +- Adds a _Show Repository Status_ command (`gitlens.showQuickRepoStatus`) to show a quick pick menu for visualizing the current repository status. + +
+ +
+ +--- + +## Interactive Rebase Editor + +
+ +
+ +Adds a user-friendly interactive rebase editor to easily configure an interactive rebase session: + +- Quickly re-order, edit, squash, and drop commits. +- Includes drag & drop support. +- Toolbar commands for **Abort**, **Continue**, **Reopen as Interactive Editor**, and **Reopen as Text Editor**. + +### Conflict Detection + +The rebase editor includes a **conflict files panel** that displays files with potential conflicts along with per-file conflict counts and status indicators. **Predictive conflict detection** warns about upcoming conflicts against the current base before you start the rebase, helping you prepare for issues in advance. + +### Rebase Editor Settings + +The rebase editor offers several configuration options: + +- `gitlens.rebaseEditor.openOnPausedRebase` — Automatically open the rebase editor when a rebase is paused (e.g., due to conflicts). +- `gitlens.rebaseEditor.openBehavior` — Controls how the rebase editor opens: `auto` (default) or `beside` (opens alongside the current editor). +- `gitlens.rebaseEditor.revealLocation` — Where to reveal commit details: `graph` or `inspect`. +- `gitlens.rebaseEditor.revealBehavior` — When to reveal details: `never`, `onOpen`, or `onSelection`. +- `gitlens.rebaseEditor.density` — Controls row padding in the editor: `compact` (default) or `comfortable` for more spacing. + +### Conflict Resolution Actions + +When a rebase is paused due to conflicts, the rebase editor provides inline actions to **stage current changes** or **stage incoming changes** directly, streamlining the conflict resolution workflow. + +### To use this directly from your terminal (e.g., when running `git rebase -i`): + +- Set VS Code as your default Git editor: + ```bash + git config --global core.editor "code --wait" + ``` + +- Or, to only affect rebase sessions: + ```bash + git config --global sequence.editor "code --wait" + ``` + +> To use the Insiders edition of VS Code, replace `code` with `code-insiders` in the commands above. + + +*** + +## Commit Signature Verification `PRO` + +GitLens verifies commit signatures using GPG, SSH, and X.509 certificates, displaying verification badges directly in the Commit Details view, Graph Details panel, and inline blame hovers. + +### Verification Badges + +Each signed commit shows a badge indicating its verification status: + +- **Verified** — The signature is valid and the signer is trusted +- **Unverified** — The signature could not be verified (missing key, untrusted signer, etc.) +- **Unsigned** — The commit has no signature + +The `${signature}` token is available in commit tooltip format strings to display signature status in custom tooltip layouts. + +### Allowed Signers Management + +The **Allowed Signers** webview (`gitlens.allowedSigners`) provides a dedicated panel for managing SSH trusted signers. It scans recent commits for SSH signatures, discovers candidate signers with their avatars, and lets you select which keys to trust. Trusted entries are saved to your SSH `allowed_signers` file. + +Access it from the Command Palette: `GitLens: Manage Allowed Signers` + + +*** + +## Autolinks + +Use autolinks to convert external references—such as Jira issues or Zendesk tickets—into clickable links directly from commit messages. + +
+ +
Example of autolinks in commit messages
+
+ +## Terminal Links + +
+ +
Autolinks in the integrated terminal
+
+ +Terminal links optionally provide clickable references in the integrated terminal: + +- [Branches, tags, and commit ranges](/gitlens/settings/#terminal-links-settings): Quickly explore their commit history. +- [Individual commits](/gitlens/settings/#terminal-links-settings): Review commit details and take further action. + +*** + +## Remote Provider Integrations + +GitLens provides rich integrations with many remote providers, including GitHub, GitHub Enterprise, GitLab, Gitea, Gerrit, Bitbucket, Bitbucket Server, and Azure DevOps. You can also define [custom remote providers](/gitlens/settings/#remote-provider-integration-settings) or [remote providers with custom domains](/gitlens/settings/#remote-provider-integration-settings). + +Basic integrations offer issue and pull request autolinking. Richer integrations, like GitHub or GitLab, include: + +- Launchpad support +- Rich hover information for autolinks +- Pull request association with branches and commits +- Avatars for authors and commenters + +These integrations also support various commands to open or copy URLs for files, commits, branches, and repositories: + +- **Open File from Remote** (`gitlens.openFileFromRemote`) — Open a local file from a URL on a remote provider +- **Open Revision from Remote** (`gitlens.openRevisionFromRemote`) — Open the specific file revision referenced by a remote URL, rather than the working copy +- **Open File on Remote** (`gitlens.openFileOnRemote`) — Open a file or revision on the remote provider +- **Copy Remote File URL** (`gitlens.copyRemoteFileUrlToClipboard`) — Copy the URL of a file or revision +- **Open File on Remote From...** (`gitlens.openFileOnRemoteFrom`) — Open a file or revision from a specific branch or tag +- **Copy Remote File URL From...** (`gitlens.copyRemoteFileUrlFrom`) — Copy the URL from a specific branch or tag +- **Open Commit on Remote** (`gitlens.openCommitOnRemote`) — Open a commit +- **Copy Remote Commit URL** (`gitlens.copyRemoteCommitUrl`) — Copy the commit URL +- **Open Branch on Remote** (`gitlens.openBranchOnRemote`) — Open a branch +- **Copy Remote Branch URL** (`gitlens.copyRemoteBranchUrl`) — Copy the branch URL +- **Open Branches on Remote** (`gitlens.openBranchesOnRemote`) — Open the branches view +- **Copy Remote Branches URL** (`gitlens.copyRemoteBranchesUrl`) — Copy the branches view URL +- **Open Comparison on Remote** (`gitlens.openComparisonOnRemote`) — Open a comparison view +- **Copy Remote Comparison URL** (`gitlens.copyRemoteComparisonUrl`) — Copy the comparison view URL +- **Open Pull Request on Remote** (`gitlens.openPullRequestOnRemote`) — Open a pull request +- **Copy Pull Request URL** (`gitlens.copyRemotePullRequestUrl`) — Copy the pull request URL +- **Open Repository on Remote** (`gitlens.openRepoOnRemote`) — Open the repository +- **Copy Remote Repository URL** (`gitlens.copyRemoteRepositoryUrl`) — Copy the repository URL + +### Connecting the GitHub and GitLab Integration + +The GitHub and GitLab integrations connect through your GitKraken account at [gitkraken.dev](https://gitkraken.dev/settings/integrations?source=help_center&product=gitlens). + +To connect an integration: + +1. Open the Command Palette (`Cmd`/`Ctrl`+`Shift`+`P`). +2. Run `GitLens: Manage Integrations`. +3. Alternatively, open **GitKraken Account** from the GitLens Activity Bar and select **Integrations**. + +
+ +
Connect integrations from the GitKraken dashboard
+
+ +If you're not already signed in, you'll be prompted to log in to your GitKraken account. Then, select **Connect with GitHub** or **Connect with GitLab**, and follow the sign-in steps. You can connect multiple integrations if needed. + +Finish the process by selecting **Complete Setup** to return to VS Code and begin using the integrations. + +
+ +
Manage your connected integrations
+
+ +
+

Community users are limited to basic functionality only.

+
+ + +## GitHub Enterprise Server and GitLab Self-Managed Integration `PRO` + +GitLens Pro offers a richer integration with GitHub Enterprise Server and GitLab Self-Managed. + +Once authenticated, GitLens enhances autolinks in hovers with additional context. You’ll see your GitHub Enterprise Server or GitLab Self-Managed avatar, links to related pull requests, and a summary of pull request or issue details. Sidebar views for commits or branches also show this contextual information. + +
+ +
Enhanced hover integration with GitHub Enterprise and GitLab Self-Managed
+
+ +### Connecting GitHub Enterprise Server or GitLab Self-Managed + +To connect either integration: + +1. Open `settings.json`: + - Use the Command Palette (`Cmd`/`Ctrl` + `Shift` + `P`) > **Preferences: Open User Settings (JSON)** + +2. Add a `gitlens.remotes` entry specifying the domain and type: + +```json +"gitlens.remotes": [{ "domain": "git.corporate-url.com", "type": "GitHub" }] +``` + +Or + +```json +"gitlens.remotes": [{ "domain": "git.corporate-url.com", "type": "GitLab" }] +``` + +3. Open a repository from GitHub Enterprise Server or GitLab Self-Managed in VS Code. +4. Go to the [Remotes View](/gitlens/side-bar/#remotes-view). +5. Select **Connect to Remote**. + - If this option is missing, verify the format in your `settings.json` matches the example above. + +
+ +
Connect to a GitHub Enterprise or GitLab Self-Managed instance
+
+ +6. Provide a Personal Access Token (PAT) with the required scopes when prompted, and press **Enter** to complete the connection. + + + +*** + +## Jira Integration `PRO` + +The Jira Integration, connected through your GitKraken Account, enables Jira [Autolinks](/gitlens/gitlens-features#autolinks) wherever autolinks are supported in GitLens. Once connected, GitLens automatically converts Jira issue keys (e.g., `ABC-123`) in commit messages into clickable links. + +
+ +
Jira autolinks in commit messages
+
+ +
+

This feature is only available for Pro subscription tiers or higher.

+
+ +To connect the integration: + +1. Open the GitLens Sidebar. +2. From the GitKraken Account view, select **Cloud Integrations**. +3. Choose **Jira Cloud**, and authorize access to your Atlassian Account. +4. Alternatively, visit your [Integration Settings](https://gitkraken.dev/settings/integrations?source=help_center&product=gitlens) in a browser. + +
+ +
Connect Jira from GitKraken Cloud Integrations
+
+ + +*** + +## Powerful Commands + +GitLens provides powerful commands to improve your workflow: + +- **Add Co-authors** (`gitlens.addAuthors`) — Add a co-author to the commit message input box. +- **Copy SHA** (`gitlens.copyShaToClipboard`) — Copy the commit SHA of the current line or the latest commit. +- **Copy Message** (`gitlens.copyMessageToClipboard`) — Copy the commit message from the current line or latest commit. +- **Copy Current Branch** (`gitlens.copyCurrentBranch`) — Copy the current branch name to the clipboard. +- **Switch to Another Branch** (`gitlens.views.switchToAnotherBranch`) — Quickly switch branches. +- **Compare References...** (`gitlens.compareWith`) — Compare two references. +- **Compare HEAD with...** (`gitlens.compareHeadWith`) — Compare HEAD with a selected reference. +- **Compare Working Tree with...** (`gitlens.compareWorkingWith`) — Compare the working tree with a selected reference. +- **Open Changes (difftool)** (`gitlens.externalDiff`) — Open file changes with the configured Git difftool. +- **Open All Changes (difftool)** (`gitlens.externalDiffAll`) — Open all working changes with the configured difftool. +- **Open Directory Compare (difftool)** (`gitlens.diffDirectoryWithHead`) — Compare working tree with HEAD using a difftool. +- **Open Directory Compare (difftool) with...** (`gitlens.diffDirectory`) — Compare with a selected reference. +- **Open File** (`gitlens.openWorkingFile`) — Open the working version of the current file. +- **Open Revision...** (`gitlens.openFileRevision`) — Open a selected file revision. +- **Open Revision from...** (`gitlens.openFileRevisionFrom`) — Open a revision from a specific reference. +- **Open Blame Prior to Change** (`gitlens.openBlamePriorToChange`) — Show blame for the prior revision of a line. +- **Open Changed Files** (`gitlens.openChangedFiles`) — Open all changed files in the working tree. +- **Close Unchanged Files** (`gitlens.closeUnchangedFiles`) — Close all files without changes. +- **Enable Debug Logging** (`gitlens.enableDebugLogging`) — Enable debug logging in the GitLens output. +- **Disable Debug Logging** (`gitlens.disableDebugLogging`) — Disable debug logging. +- **Copy as Patch** (`gitlens.copyPatchToClipboard`) — Copy patch data from views, changes, or stashes. +- **Apply Copied Patch** (`gitlens.applyPatchFromClipboard`) — Apply a patch from clipboard contents. +- **Change Branch Merge Target** (`gitlens.changeBranchMergeTarget`) — A multi-step wizard to set or reset a branch's merge target. Pick a local branch, then select a remote branch as its merge target, or reset an existing target. +- **Copy Changes to Worktree** (`gitlens.worktree.copyChanges`) — Copy working changes from one worktree to another. +- **Unlock Worktree** (`gitlens.worktree.unlock`) — Unlock a locked worktree from the tree view context menu. + + +*** + +## Deep Links + +Deep Links are URLs that open specific GitLens resources, improving collaboration by sharing direct links to repositories, files, comparisons, and more. Resources that support Deep Linking include: + +- **Search & Compare** — Link to comparisons in the [Search & Compare view](/gitlens/side-bar/#search-compare-view). Right-click a comparison, hover over _Share_, and select _Copy Link to Comparison_. +- **GitKraken Workspaces** — Link to a [GitKraken Workspace](/gitlens/side-bar/#workspaces-☁%ef%b8%8f). Right-click a Workspace, hover over _Share_, and select _Copy Link to Workspace_. +- **Commit Graph** — Link to remote repositories, commits, branches, and tags in the [Commit Graph](gitlens/gitlens-features/#commit-graph-%60pro%60). Right-click the resource, hover over _Share_, and select _Copy Link to _. +- **Files or Lines** — Link to specific files or lines of code. Right-click highlighted lines or a file, hover over _Share_, and select _Copy vscode.dev Link_. +- **Cloud Patches** — Link to a [Cloud Patch](/gitlens/gitlens-features/#cloud-patches-preview-%e2%98%81%ef%b8%8f). After generating a Cloud Patch, click _Copy Link_ from the success prompt. + +
+ +
Example of generating and using Deep Links
+
+ +*** + +## Git Submodule Support + +GitLens provides basic support for Git submodules. Submodule repositories are automatically discovered and tracked when you open a project that contains them. In the sidebar views, submodule repositories are distinguished with dedicated icons and tooltips. Submodule changes are handled in diffs so you can see when a submodule reference has been updated. + +*** + +## Welcome View + +The **Welcome** sidebar view provides a guided multi-step walkthrough for new and returning users. It covers getting started with GitLens, the Home view, the Commit Graph, AI features, Git Blame, PR reviews, and MCP agent integration. The walkthrough content adapts based on your subscription level. + +Access it from the GitLens sidebar — the Welcome view appears at the top of the sidebar panel. + +*** + +## AI Agent Integration `PRO` + +GitLens integrates with AI coding agents to monitor their activity and coordinate their work alongside your own development workflow. + +### Supported Agents + +Agent integration supports multiple AI agents: + +- Claude Code +- OpenAI Codex +- GitHub Copilot +- Google Gemini +- OpenCode + +### Agent Hooks + +GitLens can install hooks for AI agents so their activity is tracked within your repository. Use the following commands: + +- **Install Agent Hooks** (`gitlens.installHooks`) — Install hooks for all detected agents +- **Install Hooks for Agent** (`gitlens.installHooksForAgent`) — Install hooks for a specific agent +- **Uninstall Agent Hooks** (`gitlens.uninstallHooks`) — Remove hooks for all agents +- **Uninstall Hooks for Agent** (`gitlens.uninstallHooksForAgent`) — Remove hooks for a specific agent + +### Agent Sessions + +When hooks are active, GitLens tracks agent sessions and displays status indicators: + +- **Agent session cards** appear in the Home view showing active and recent sessions +- **Status pills** on branches in the Commit Graph indicate which branches have active agent sessions +- **Resume Session** (`gitlens.resumeSession`) and **Archive Session** (`gitlens.archiveSession`) commands manage session lifecycle + +### MCP Server Management + +GitLens manages the GitKraken MCP server installation on a per-agent basis. The **Connect Agents** flow walks you through installing the CLI, registering MCP for your current IDE, and connecting additional agents. + +- **Connect Agents** (`gitlens.mcp.connectAgents`) — Interactive flow to install and configure MCP for your agents +- **Install MCP for All Agents** (`gitlens.mcp.installForAllAgents`) — Install the GitKraken MCP server for all detected agents +- **Install MCP for Agent** (`gitlens.mcp.installForAgent`) — Install for a specific agent +- **Uninstall MCP for Agent** (`gitlens.mcp.uninstallForAgent`) — Remove MCP from a specific agent + +The agent settings panel provides a centralized view for managing agent configurations. + +*** + +## Menus & Toolbars + +
+ +
GitLens menu and toolbar options
+
+ +GitLens provides [customizable](/gitlens/gitlens-settings/#elementor-toc__heading-anchor-16) menu and toolbar contributions to let you control where GitLens commands appear. You can easily manage these settings via the [interactive settings editor](/gitlens/gitlens-settings/). + +For example, disabling **Add to the editor group toolbar** removes those items from the toolbar: + +
+ +
Editor group toolbar items removed
+
+ +You can also expand each section to customize visibility and placement more granularly. + +*** + +## Modes + +GitLens supports [user-defined](#modes-settings- 'Jump to the Modes settings') modes for quickly toggling between sets of settings. + +- Shows the active mode in the **status bar** ([optional](#modes-settings- 'Jump to the Modes settings'), enabled by default) + - **Toggle Review Mode** (`gitlens.toggleReviewMode`) — Quickly toggle Review mode. +- **Switch Mode** (`gitlens.switchMode`) — Quickly switch between modes. +- **Zen Mode** — Disables many visual elements for a focused experience. + - **Toggle Zen Mode** (`gitlens.toggleZenMode`) — Toggle Zen mode. +- **Review Mode** — Enables visual elements for code review. + +### Experimental Multi-diff Editor + +VS Code 1.86 or later is required for these capabilities. + +#### Commands using Multi-diff + +- **Open Folder Changes with Revision...** and **Open Folder Changes with Branch or Tag...** via Command Palette, Explorer, and Source Control views. +- Inline **Open All Changes** in commits, stashes, and comparison views. +- **Open All Changes** and **Open All Changes with Working Tree** — Use the new multi-diff editor. +- **Open All Changes, Individually** and **Open All Changes with Working Tree, Individually** — Provide legacy behavior. diff --git a/gitlens/gitlens-settings.md b/gitlens/gitlens-settings.md index 0830762..c69e5c4 100644 --- a/gitlens/gitlens-settings.md +++ b/gitlens/gitlens-settings.md @@ -4,20 +4,104 @@ description: Learn how to access and customize GitLens settings in Visual Studio taxonomy: category: gitlens --- -Last updated: July 2025 +Last updated: August 2025 ## Overview +GitLens is highly customizable. Nearly every feature can be tailored through the built-in **Visual Settings Editor** or by editing `settings.json` directly. + +To open the editor, run _GitLens: Open Settings_ (`gitlens.showSettingsPage`) from the [Command Palette](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette). + +
+ GitLens Visual Settings Editor showing the Inline Blame category with toggle controls and format options +
The Visual Settings Editor — Inline Blame category
+
+ +The editor organizes settings into five groups with a navigation rail on the left: **Setup**, **Integrations**, **Editor**, **Views**, and **General**. Each category shows its controls with live previews — changes apply immediately. A search bar at the top filters across all categories, and a **User / Workspace** scope toggle determines whether changes apply globally or to the current workspace. + +You can deep-link to any category by appending its anchor to the command: `gitlens.showSettingsPage!` (for example, `gitlens.showSettingsPage!ai` opens the AI category directly). + +### Setup + +The Setup group contains account management and onboarding. +
- GitLens settings editor UI in Visual Studio Code -
GitLens interactive settings editor in VS Code
+ GitLens Settings Account category showing subscription status and account management +
Account category
-GitLens offers a powerful and easy-to-use **interactive settings editor** that helps you configure many features directly in Visual Studio Code. +**Account** (`account`) — view your subscription status, manage your GitKraken account, and sign in or out. **Get Started** (`setup`) — onboarding steps for new users and feature discovery. -To open the editor, run the _GitLens: Open Settings_ command (`gitlens.showSettingsPage`) from the [Command Palette](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette). +### Integrations + +Settings for AI, cloud integrations, and external service connections. + +
+ GitLens Settings AI category showing AI provider selection and model configuration +
AI category
+
+ +**AI** (`ai`) — choose your AI provider, configure models, and control AI-powered features like commit message generation and code explanations. **Agents** (`agents`) — configure AI agent behavior for automated code tasks. **Cloud Integrations** (`integrations`) — connect GitHub, GitLab, Bitbucket, Azure DevOps, and other hosting providers for pull request information, avatars, and deep links. + +
+ GitLens Settings Cloud Integrations category showing provider connection cards +
Cloud Integrations category
+
+ +**Custom Remotes** (`remotes`) — define URL patterns for self-hosted or non-standard remote providers. **Autolinks** (`autolinks`) — create patterns that automatically turn issue references (like `JIRA-123`) into clickable links. **Launchpad** (`launchpad`) — configure the Launchpad status bar indicator and notification behavior. **Terminal Links** (`terminal-links`) — control how git references in the integrated terminal become clickable links. + +### Editor + +Annotation and decoration settings for the code editor. + +
+ GitLens Settings Inline Blame category showing current line blame annotation options +
Inline Blame category — the default view
+
+ +**Inline Blame** (`current-line`) — configure the blame annotation shown at the end of the current line, including format, date style, and pull request information. **Git CodeLens** (`code-lens`) — toggle and format the authorship and change indicators above code blocks. **Status Bar Blame** (`status-bar`) — control the blame summary in the VS Code status bar. **Hovers** (`hovers`) — configure hover tooltips that appear over blame annotations and code, including details, changes, and pull request information. + +
+ GitLens Settings Hovers category showing hover annotation toggles +
Hovers category
+
+ +**File Blame** (`blame`) — gutter annotations showing per-line authorship across the entire file. **File Changes** (`changes`) — gutter indicators highlighting additions, deletions, and modifications relative to the previous commit. **File Heatmap** (`heatmap`) — color-coded gutter annotations showing the relative age of each line of code. + +### Views + +Configuration for Commit Graph and source control tree views. + +
+ GitLens Settings Commit Graph category showing graph layout and column options +
Commit Graph category
+
-GitLens is highly customizable—nearly every feature can be tailored to fit your workflow using the available settings. +**Commit Graph** (`commit-graph`) — layout, columns, minimap, scroll markers, details panel position, and graph style (table, list, or auto). This is a Pro feature. **GitLens SCM** (`scm-views`) — configure the Source Control Manager view integration. **Commits** (`commits-view`) — file layout, avatars, and pull request display in the Commits view. **Stashes** (`stashes-view`) — configure the Stashes view layout and display options. + +
+ GitLens Settings Commits view category showing file layout and display options +
Commits view category
+
+ +> **Note:** In v19.0, ten view-specific settings categories (Repositories, Branches, Remotes, Tags, Worktrees, Contributors, File History, Line History, Search & Compare, and File Annotations) moved to VS Code's native settings. Configure them in `settings.json` or through _Preferences: Open Settings (UI)_ by searching for `gitlens.views`. + +### General + +Date formatting and UI customization. + +
+ GitLens Settings Dates and Times category showing date format options +
Dates & Times category
+
+ +**Dates & Times** (`dates`) — control absolute and relative date formatting across all GitLens surfaces. **Menus & Toolbars** (`menus`) — show or hide GitLens items in editor context menus, title bars, and toolbars. + +*** + +## Settings Reference + +The sections below document every `settings.json` parameter grouped by feature area. You can edit these directly in `settings.json` or use the Visual Settings Editor above. ## Current Line Blame Settings @@ -425,6 +509,10 @@ These settings control how the GitLens Commits view displays commit dat branch – compares current branch to another reference
working – compares working tree to a selected reference + +gitlens.views.commits.showSignatureVerification +Shows commit signature verification status in views. + @@ -525,6 +613,10 @@ These settings customize how repositories are displayed and interacted with in t gitlens.views.repositories.showUpstreamStatus Displays upstream tracking status of the current branch for each repository. + +gitlens.views.repositories.branches.compact +Flattens branch folders when using tree layout, combining single-child folders into a single entry. + @@ -552,6 +644,10 @@ These settings configure the behavior and display options for the GitLens Fi gitlens.advanced.fileHistoryShowMergeCommits Controls whether merge commits are shown in file history:

show – includes merge commits
hide – excludes merge commits + +gitlens.views.fileHistory.mode +Controls the display mode — commits shows commit history, contributors groups by contributor. + @@ -642,6 +738,10 @@ These settings configure the display and behavior of the GitLens Branchesfalse – hides comparisons
branch – compares the current branch with a selected reference + +gitlens.views.branches.compact +Flattens branch folders when using tree layout, combining single-child folders into a single entry. + @@ -708,6 +808,10 @@ These settings define how branches, files, and pull requests appear in the GitLe false – hides comparisons
branch – compares the current branch with a selected reference + +gitlens.views.remotes.compact +Flattens branch folders when using tree layout, combining single-child folders into a single entry. + *** @@ -793,6 +897,10 @@ These settings control how Git tags and related files appear in the GitLens gitlens.views.tags.reveal Determines whether tags are shown in the Tags view or revealed in the Repositories view. + +gitlens.views.tags.compact +Flattens branch folders when using tree layout, combining single-child folders into a single entry. + @@ -1150,6 +1258,55 @@ These settings control the display options for files and avatars in the GitLens gitlens.terminalLinks.enabled Enables terminal links—autolinks in the integrated terminal that provide quick access to details for commits, branches, tags, and more. + +gitlens.terminalLinks.showIn +Controls where terminal link references open.

+graph – opens in the Commit Graph
+inspect – opens in the Inspect view
+quickpick – opens in a quick pick menu + + + + +*** + +## Rebase Editor Settings + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescription
gitlens.rebaseEditor.openOnPausedRebaseControls whether the rebase editor auto-opens when a rebase is paused. The auto option only opens for rebases started within GitLens.

+true – always opens
+false – never opens
+auto – only opens for rebases started within GitLens
gitlens.rebaseEditor.revealLocationControls where the rebase editor opens.
gitlens.rebaseEditor.revealBehaviorControls how the rebase editor reveals itself.
gitlens.rebaseEditor.densityControls the visual density of commits in the rebase editor.

+compact – compact display
+comfortable – comfortable display with more spacing
gitlens.rebaseEditor.openBehaviorControls whether the rebase editor opens beside the current editor.

+auto – automatically determined
+beside – opens beside the current editor
@@ -1514,6 +1671,10 @@ Another custom example:
Specifies custom instructions to provide to the AI provider when generating a pull request title and description
+ +gitlens.ai.exclude.files +Glob patterns for files to exclude from AI context. Also respects .aiignore, .cursorignore, and .aiexclude files. + @@ -1547,7 +1708,7 @@ Another custom example:
gitlens.outputLevel -Controls the verbosity of output sent to the GitLens output channel. +Removed in v17.11 — This setting has been removed. Use the VS Code native output channel log level instead. gitlens.showWelcomeOnInstall @@ -1671,7 +1832,7 @@ Another custom example:
gitlens.visualHistory.allowMultiple -Allows opening multiple Visual File History instances in the editor area. +Allows opening multiple Visual History instances in the editor area. gitlens.liveshare.enabled @@ -1689,6 +1850,36 @@ Another custom example:
gitlens.experimental.cloudIntegrations.enabled Enables GitHub integration via GitKraken account cloud integration. + +gitlens.advanced.git.maxConcurrentProcesses +Maximum number of concurrent git processes, with priority-based queuing. + + +gitlens.defaultCurrentUserNameStyle +Controls how the current user's name is displayed across blame, hovers, views, and graph. + + +gitlens.advanced.gitTimeout +Timeout in milliseconds for git operations. + + +gitlens.advanced.resolveSymlinks +Resolves symbolic links before performing git operations. + + +gitlens.advanced.skipOnboarding +Skips the welcome walkthrough on new installations. + + +gitlens.sortWorkingChangesBy +Controls how working changes are sorted.

+stage – sorts by staging status
+flat – flat sort order + + +gitlens.visualHistory.editorOpeningBehavior +Controls how files open from the Visual History view. + @@ -1793,6 +1984,75 @@ Honored when opening the Commit Graph from the command palette. gitlens.graph.sidebar.enabled Shows or hides the sidebar in the Commit Graph. + +gitlens.graph.stickyTimeline +Pins the timeline panel to stay visible while scrolling the graph. + + +gitlens.graph.autoFetch.enabled +Enables periodic automatic git fetch in the Commit Graph. + + +gitlens.graph.details.location +Controls where the details panel appears relative to the graph.

+right – details panel on the right
+bottom – details panel on the bottom
+auto – automatically positioned + + +gitlens.graph.details.maximizeOnMode +Automatically maximizes the details panel when entering Compose or Review mode. + + +gitlens.graph.editorOpeningBehavior +Controls how files open from the graph (e.g., in the current editor group or beside it). + + +gitlens.graph.sidebar.pinned +Pins the graph sidebar to stay visible. + + +gitlens.graph.showWorktreeWipStats +Shows working tree change statistics on WIP rows. + + +gitlens.graph.minimap.reversed +Reverses the minimap direction. + + +gitlens.graph.minimap.defaultVisibility +Controls when the minimap is visible by default.

+hidden – minimap is hidden
+onSearch – minimap appears during search
+always – minimap is always visible + + +gitlens.graph.overviewBar.visibility +Controls visibility of the overview bar in the graph. + + +gitlens.graph.refFindAutoHide +Auto-hides the ref-finder widget after selection. + + +gitlens.graph.style +Controls the graph display style.

+table – table layout
+list – list layout
+auto – automatically selected + + +gitlens.graph.changesColumn.enabled +Shows or hides the Changes column in the graph. + + +gitlens.graph.changesColumn.mode +Controls how changes are visualized in the Changes column.

+numbers – shows numeric counts
+squares – shows colored squares
+bar – shows a bar indicator
+bipolar – shows a bipolar indicator + diff --git a/gitlens/gitlens-start-here.md b/gitlens/gitlens-start-here.md index 4407243..cff6b88 100644 --- a/gitlens/gitlens-start-here.md +++ b/gitlens/gitlens-start-here.md @@ -34,7 +34,7 @@ Understanding code history can be difficult when looking at complex repositories #### Commit Graph -Once you have a repository open in VS Code, the Commit Graph gives you an interactive, action oriented visual of your commit and branch history. This allows you to follow your repository over time to see what is happening with branches and see why it was done with commit messages. You can quickly jump to any point in history by searching for either branches or commits. To view the commit graph, use the command palette (command/ctrl + shift + P) > _GitLens: Show Commit Graph View_ or select the _Show Commit Graph_ icon. +The Commit Graph is the main view in the GitLens sidebar and your starting point for working with GitLens. Once you have a repository open in VS Code, it gives you an interactive, action-oriented visual of your commit and branch history, powered by a high-performance rendering engine built for speed at scale. This allows you to follow your repository over time to see what is happening with branches and see why it was done with commit messages. You can quickly jump to any point in history by searching for either branches or commits. The Commit Graph opens automatically in the GitLens sidebar, or you can access it from the command palette (command/ctrl + shift + P) > _GitLens: Show Commit Graph View_. Open the Commit Graph in GitLens. diff --git a/gitlens/home-view.md b/gitlens/home-view.md index 1b68922..89d2553 100644 --- a/gitlens/home-view.md +++ b/gitlens/home-view.md @@ -17,6 +17,10 @@ From here, you can understand what’s happening across your repository, coordin
GitLens Commit Graph
+## Welcome View + +When you first install or update GitLens, the **Welcome** sidebar view appears above the Commit Graph. It provides a multi-step walkthrough covering Getting Started, Home, Commit Graph, AI Features, Git Blame, PR Reviews, and MCP. The content adapts to your subscription level, helping you discover the features available on your plan. + ## Start in the Commit Graph When you open GitLens, the Commit Graph gives you a connected view of your repository and the work happening across it. @@ -119,6 +123,14 @@ When parallel work collides, use AI-assisted conflict resolution to understand a **Monitor parallel work. Review what changed. Shape it. Compare it. Rebase and resolve it. Get it ready to merge. All from the Commit Graph.** +## Change Branch Merge Target + +You can set or reset the merge target for any branch using the Change Branch Merge Target command. This multi-step wizard lets you pick a repository, select a local branch, and choose a remote branch as its merge target. You can also reset the merge target if one was previously set. + +**How to access:** +- From the Commit Graph: Use the merge target indicator in the branch header +- From the Command Palette: `GitLens: Change Branch Merge Target` + ## Stay Oriented as Work Moves The Commit Graph keeps important reference points visible as your repository changes. @@ -136,7 +148,7 @@ Continue exploring the workflows available from the Commit Graph: - [Compare](/gitlens/side-bar/#search-and-compare-view) to understand differences across your work - [AI-powered Rebase](/gitlens/gitlens-features/#interactive-rebase-editor) to automate and clean up rebases - [AI-assisted Conflict Resolution](/gitlens/gl-agents/#resolve-conflicts-in-the-commit-graph) to resolve overlapping work -- [Visual History](/gitlens/gl-visual-file-history/) to understand how your codebase evolved +- [Visual History](/gitlens/gl-visual-file-history/) to visualize how files, branches, or your entire repository evolved over time - [Launchpad](/gitlens/gl-launchpad/) to prioritize pull requests and move work toward merge Or follow a complete workflow from start to finish: diff --git a/gitlens/side-bar.md b/gitlens/side-bar.md index bdb388a..21b9566 100644 --- a/gitlens/side-bar.md +++ b/gitlens/side-bar.md @@ -32,7 +32,7 @@ This sidebar includes: - **Overview** - **Line History** - **File History** -- **Visual File History** +- **Visual History** - **Search & Compare**
@@ -214,6 +214,7 @@ The **File History** view lists all commits that modified the current file on th - A toggle to pin (pause) automatic tracking of the current editor - A toggle to switch between file and line history +- A toggle to switch between **Commits** mode (default) and **Contributors** mode, which shows all contributors to the file instead of the commit list - The ability to change the base branch or reference for history - (File history only) A toggle to follow renames - (File history only) A toggle to show commits from all branches @@ -254,6 +255,7 @@ A [customizable](/gitlens/settings/#branches-view-settings) view to visualize, e The **Branches** view lists all local branches and includes: +- A repository filter with an **All Repositories excluding worktrees** option that hides linked worktrees whose main repository is also open - A toggle to switch between list or tree layout - A toggle to change file layout: list, tree, or auto - Upstream status icons: @@ -467,7 +469,9 @@ The **Search & Compare** view displays pinnable results from search or compariso ### Pinnable Search -Search commits by message, author, file, ID, or patch using: +Search commits by message, author, file, ID, patch, or natural language query. AI-powered natural language search converts plain English queries into structured Git search operators, so you can search for commits by describing what you are looking for. Time-based search operators are also available for filtering by date ranges. + +Search using: - **Search Commits** (`gitlens.showCommitSearch`): - `` — message match