GitCanvas — JetBrains-style Git for VSCode
A JetBrains-inspired Git experience for Visual Studio Code.
Built for developers coming from IntelliJ / WebStorm / RubyMine who refuse to give up their visual Git workflow.
English | 中文
English
Why GitCanvas?
If you've ever switched from a JetBrains IDE to VSCode, you probably hit the same wall: VSCode's built-in Source Control is fine for staging, but the visual Git graph, interactive rebase UI, and one-click commit panel you loved in IntelliJ are just… gone. GitLens is great, but it's inspection-only — it doesn't do the work for you. GitCanvas is the missing piece.
Features
🎨 Git Graph (Canvas-rendered)
- Renders 10k+ commits smoothly with Canvas (not SVG)
- Branch lanes, merge points, ref labels (HEAD/branches/tags/remotes)
- Click any commit → see diff, files, author, parents
- Dark/light themes follow VSCode automatically
📝 Commit Panel (JetBrains-style)
- Stage/unstage files individually or by hunk
- See diff inline, write commit message with line/multi-line support
- Recent commit messages history (click to reuse)
- Hunk-level staging (Stage hunk / Unstage hunk)
🔀 Interactive Rebase
- Drag-and-drop reordering of commits
- Squash / Pick / Reword / Drop / Edit from a single panel
- Visual conflict preview
- Branch Compare — see commits and file diff between any two branches
- Inline Blame — line blame shown at cursor, click to jump to graph
- Merge Conflicts — auto-opens a panel when conflicts are detected
- Changelists & Shelves — JetBrains-style changelists
- Tags Management — create/delete/push tags
- i18n — English & Simplified Chinese, follows VSCode language
Screenshots
Placeholders — replace with real screenshots before publishing v0.2.0
| Git Graph |
Commit Panel |
Interactive Rebase |
 |
 |
 |
How is it different from GitLens / Git Graph?
| Capability |
GitLens |
Git Graph (mhutchie) |
GitCanvas |
| Visual commit graph |
⚠️ requires Pro |
✅ |
✅ Canvas-rendered |
| Commit panel (stage/unstage) |
❌ |
❌ |
✅ |
| Interactive rebase UI |
⚠️ partial |
❌ |
✅ |
| Hunk-level staging |
⚠️ partial |
❌ |
✅ |
| Branch compare |
⚠️ |
❌ |
✅ |
| Inline blame |
✅ |
❌ |
✅ |
| Changelists |
❌ |
❌ |
✅ |
| Pricing |
Free + Pro ($15/mo) |
Free |
Free (eventually: one-time Pro buy-out) |
GitCanvas is not a replacement for GitLens — it's the workflow half that GitLens doesn't cover. Where GitLens shows you what happened, GitCanvas helps you do the work.
Keyboard Shortcuts
| Action |
Mac |
Windows/Linux |
| Open Git Graph |
Cmd+Shift+G |
Ctrl+Shift+G |
| Open Commit Panel |
Cmd+Shift+C |
Ctrl+Shift+C |
Configuration
{
"gitcanvas.language": "auto" // "auto" | "en" | "zh-cn"
}
Roadmap
- [x] v0.1.0 — Git Graph + Commit Panel + Interactive Rebase + Branch Compare + Blame + Merge Conflicts + Changelists + Tags
- [ ] v0.2.0 — Hunk-level staging polish, screenshot pack, publisher verification
- [ ] v0.3.0 — GitHub/GitLab integration (PRs, issues inline)
- [ ] v0.4.0 — Pro tier (one-time buy-out, ~$5): advanced stashing, reflog visualizer, custom workflows
Feedback & Issues
License
MIT
中文
为什么做 GitCanvas?
如果你从 JetBrains 系列 IDE(IntelliJ / WebStorm / RubyMine)切换到 VSCode,多半会遇到同一个坑:VSCode 自带的 Source Control 暂存变更没问题,但你在 IntelliJ 里习惯的可视化 Git 图谱、交互式 Rebase、一键提交面板——全没了。 GitLens 不错,但它只看不做。GitCanvas 就是把那块缺的拼图补上。
功能
🎨 Git 图谱(Canvas 渲染)
- Canvas 渲染 10k+ commit 也丝滑(不是 SVG)
- 分支泳道、合并点、ref 标签(HEAD / 分支 / 标签 / 远程)
- 点击任一 commit → 查看 diff、文件、作者、父提交
- 深色/浅色主题自动跟随 VSCode
📝 提交面板(JetBrains 风格)
- 文件级或 hunk 级暂存/取消暂存
- 内联 diff,多行 commit message 支持
- 历史 commit message 复用(点击一下生效)
- Hunk 级暂存(按代码块选择性提交)
🔀 交互式 Rebase
- 拖拽调整 commit 顺序
- Squash / Pick / Reword / Drop / Edit 一个面板搞定
- 冲突预览
🔧 其他工具
- 分支对比 — 看两分支之间的 commit 差异和文件差异
- 行内 Blame — 光标所在行显示 blame,点击跳转到图谱
- 合并冲突 — 检测到冲突自动弹面板
- 变更列表 & 搁置 — JetBrains 风格的 changelist
- 标签管理 — 创建 / 删除 / 推送 tag
- 多语言 — 英文 + 简体中文,自动跟随 VSCode
截图
占位图 — v0.2.0 发布前替换为真实截图
和 GitLens / Git Graph 有什么不一样?
| 功能 |
GitLens |
Git Graph (mhutchie) |
GitCanvas |
| 可视化 commit 图谱 |
⚠️ 收费Pro |
✅ |
✅ Canvas渲染 |
| 提交面板(暂存/取消) |
❌ |
❌ |
✅ |
| 交互式 rebase UI |
⚠️ 部分 |
❌ |
✅ |
| Hunk 级暂存 |
⚠️ 部分 |
❌ |
✅ |
| 分支对比 |
⚠️ |
❌ |
✅ |
| 行内 blame |
✅ |
❌ |
✅ |
| 变更列表 |
❌ |
❌ |
✅ |
| 价格 |
免费+Pro($15/月) |
免费 |
免费(未来:一次性买断Pro) |
GitCanvas 不是 GitLens 的替代品,而是 GitLens 不覆盖的那部分 workflow。GitLens 告诉你"发生了什么",GitCanvas 帮你"把活干完"。
快捷键
| 操作 |
Mac |
Windows/Linux |
| 打开 Git 图谱 |
Cmd+Shift+G |
Ctrl+Shift+G |
| 打开提交面板 |
Cmd+Shift+C |
Ctrl+Shift+C |
配置
{
"gitcanvas.language": "auto" // "auto" | "en" | "zh-cn"
}
路线图
- [x] v0.1.0 — Git 图谱 + 提交面板 + 交互式 Rebase + 分支对比 + Blame + 合并冲突 + 变更列表 + 标签
- [ ] v0.2.0 — Hunk 级暂存打磨、完整截图、publisher 认证徽章
- [ ] v0.3.0 — GitHub/GitLab 集成(PR、Issue 内嵌)
- [ ] v0.4.0 — Pro 版(一次性买断,约 ¥35):高级 stash、reflog 可视化、自定义工作流
反馈 & Issue
License
MIT