Free, local-only GitLens-style Git tooling for VS Code. Plain JS, no build step, uses the git CLI.
- Columns: Branch/Tag, Graph, Commit Message, Author (avatar), Date, Sha, Changes (+/-). Drag to resize, right-click the header to hide, compact graph mode.
- Header: repo, current branch (click to switch), ahead/behind, Pull, Push, Fetch with last-fetched time.
- Working Changes row and stash rows inside the graph. Selecting Working Changes lets you stage, unstage, discard and commit (or amend).
- Search with prefixes:
message:author:file:change:commit:after:before:@me. Options: match case, regex.F3/Shift+F3/Enterto move between matches. - Filters: All / Current / Smart branches; show or hide remote branches, tags, stashes; dim merge commits; hide individual refs (right-click a branch/tag chip).
- Minimap with markers for HEAD, branches, tags, stashes and search results. Click to jump.
- Details panel: message, author, parents, changed files as list or tree, per-file diff, open file, file history.
- Context menus on commits (checkout, branch, tag, cherry-pick, revert, undo commit, reset, compare, open on remote), stashes (apply/pop/drop) and refs.
| Feature | How |
|---|---|
| Line blame, status bar blame, hovers (Changes / Copy SHA / Open on remote / Blame previous) | automatic |
| File blame (age-colored gutter) | Alt+B |
| Git CodeLens (latest author, author count) | Shift+Alt+B to toggle |
| Compare file with branch, tag or commit; between two revisions; open file at revision | right click > Open GitLens, or Cmd+Alt+G C |
| Revision navigation: previous / next / working file | Alt+, / Alt+., or the arrows in the diff title |
| File history in the side bar: arrow keys show each commit's changes on the right; line/range history | Cmd+Alt+G H |
Branches, Compare, Worktrees (create, open in new window, remove), Tags, Stashes, Contributors.
Launchpad, Cloud Patches, Code Suggest, and all AI features.
Windows, Linux and macOS. Needs git available to VS Code (it uses the same executable as the built-in Git extension, or the git.path setting). CI runs the unit tests and an end-to-end suite in a real VS Code on all three systems.
From the Marketplace: search for Open GitLens, or run code --install-extension devneonix.open-gitlens.
From a .vsix: code --install-extension open-gitlens-<version>.vsix.
npm ci
npm test # syntax check + unit tests (temporary git repos)
npm run test:e2e # runs the commands in a real VS Code (downloads it once)Run the extension from source: open this folder in VS Code and press F5.
Avatars come from Gravatar/GitHub. Disable with openGitLens.graph.avatars: false.
src/git.jsgit CLI wrapper (novscodeimport, testable with plain node)src/gitGraph.jsgraph data: scopes, stashes, status, stats, search, worktreessrc/graphLayout.jspure lane-assignment algorithmsrc/graph.js+media/graph.{js,css}Commit Graph webviewsrc/views.jstree views,src/compare.jsCompare,src/revisions.jsrevision navigationtest/unitgit-layer tests,test/e2ereal VS Code testssrc/extension.jsline blame,src/annotations.jsfile blame,src/history.jshistory/diffs,src/codelens.js,src/actions.js