GitStudio extension
The full Git workflow in VS Code and Cursor.
One extension that puts the full Git workflow in your editor: a commit graph, inline blame, hunk and line staging, stashes, a three-pane merge editor, interactive rebase, worktrees, and GitHub pull requests. 138 commands, four sidebar views, and a Commit Graph panel. Free and open source.
v1.20.0723 installs10,443 downloadsApache-2.0Source on GitHub
Runs in VS Code, Cursor, VSCodium, Windsurf, and code-server.
GitStudio's own graph component, rendering the history of the GitStudio repository. Scroll and click through it.
Six pillars
What the extension does.
Visualize
Understand any repo at a glance.- Virtualized commit graph — fast at tens of thousands of commits, with colored lanes, ref chips, and keyboard navigation
- Filter the graph to one branch or a few; search by message · author · SHA · refs
- Inline blame + full-file annotations with a code-age heatmap, and Show in Graph from the blame hover
- File history, line history, revision stepping, reflog time-machine
Change
Stage and commit with precision.- Hunk- and line-level staging from any editor or diff — or tick changes JetBrains-style, if you prefer
- Stashes live in Changes, file by file: drag a stash onto your changes to apply it, drag files onto Stashes to stash exactly those
- Side-by-side and unified diffs with word-level highlighting
- Guided commit box: amend, sign-off, author override, Commit & Push
Rewrite
Rewrite history without losing it.- Drag-to-reorder interactive rebase: pick · reword · edit · squash · fixup · drop — set several commits at once
- Select several commits: cherry-pick, revert, squash, or drop them together, or compare two
- Universal Undo — a reflog snapshot before every destructive op, one command to reverse it; pushed history falls back to a safe revert
- Every force push is leased with
--force-with-lease
Manage
Branches, remotes, tags, worktrees.- A branch menu you drive from the keyboard — fuzzy search, remotes grouped, Reset to remote
- Worktrees, a row each: its changes and unpushed commits, Pull and Push, Stash & Remove
- Branch compare: ahead/behind, commits between refs, changed files as native diffs
- Switch Repository, for folders that hold several repositories
Collaborate
GitHub pull requests in the editor.- A Pull Requests list: open, merged, closed, search and filters, checks and review state
- A page for each pull request — conversation, commits, checks, files — and merge from it
- Review in the editor and submit from the page; New pull request is one form
- Uses the GitHub sign-in your editor already has
Assist
Optional AI, on your terms.- Commit messages drafted from your staged diff — the ✨ button in the commit box
- Explain a diff, summarize changes, review your changes before you commit
- No key with GitHub Copilot or Cursor models; or your own Anthropic or OpenAI-compatible key (OpenRouter, Ollama, LM Studio); or the Claude Code, Codex, or Gemini CLI
- On demand only — it never gates or breaks a Git operation
The Commit Graph panel
Every branch, tag and merge, in the panel.
The graph opens in VS Code's panel: lanes for every branch, ref chips for branches and tags, and the size of each change. Select a commit and its details open beside the graph, with the files it changed as a list or as a folder tree.


In the sidebar
The extension in use.
The Changes view, with staged and unstaged files, the guided commit box and live Push and Pull; and the branch menu, where every action on a branch is a keystroke away.


Ambient history
Inline blame and a code-age heatmap.
Authorship on the current line and in the status bar, always. Turn on full-file annotations and every line carries its author, age, and commit — with a code-age heatmap in the gutter: recent changes run warm, old code cools down. Hover any line for the commit, the diff, and one-click actions; step a single line through every revision with line history; and recover from the reflog time-machine the day a branch simply vanishes.


Muscle memory
Every command under one chord.
Every GitStudio shortcut lives under a single conflict-free chord —Ctrl+Alt+G (Cmd+Alt+G on macOS), then a letter. All bindings are remappable.
Install
Install for your editor.
Search “GitStudio” in your editor's Extensions view, or grab the exact command below. Requires VS Code 1.78+ (or any editor built on it) and git on your PATH. Prefer an artifact? The download page has the VSIX with a SHA-256.
GitStudio in VS Code
MarketplaceSearch “GitStudio” in the Extensions view, or run:
code --install-extension gitstudio.gitstudioGitStudio in Cursor
Open VSXCursor installs from Open VSX. Search “GitStudio” in Extensions, or run:
cursor --install-extension gitstudio.gitstudioGitStudio in VSCodium
Open VSXVSCodium installs from Open VSX. Search “GitStudio” in Extensions, or run:
codium --install-extension gitstudio.gitstudioGitStudio in Windsurf
Open VSXWindsurf installs from Open VSX. Search “GitStudio” in Extensions, or run:
windsurf --install-extension gitstudio.gitstudioGitStudio in code-server
Open VSXInstall from the Extensions view (code-server reads Open VSX), or from a shell:
code-server --install-extension gitstudio.gitstudio