A VS Code extension that brings an IntelliJ IDEA-like Git branch browsing and diffing experience to the Source Control (SCM) panel.
Features
Branch Browser (BRANCHES): Browse branches and tags as a tree in the SCM panel.
The current branch (HEAD) is always pinned to the top.
Local: list of local branches.
Remotes: remote branches grouped by remote, with multi-remote support.
Tags: tags grouped into local and remote, clearly separated; remote tags support multiple remotes and include tags that have not been fetched locally yet.
Branch / Tag actions: right-click to check out, create a new branch from it, compare with the current branch, view commit history, diff against the working tree, delete, and more.
Push: push a local branch to a configured remote, or push to all remotes at once (Push to All Remotes).
Pull: pull a remote branch into the current branch using rebase or merge.
Rebase / Merge: rebase or merge the selected branch into the current branch.
Diff (Changed Files): when comparing two branches / commits / tags, all changed files are listed (added / modified / deleted); a single click opens the native diff view. Folder chains that only contain a single sub-folder are compacted IntelliJ-style (e.g. src/main/java/com/example), so deep paths no longer waste indentation.
Branch Graph: open the Branch Graph from the Branches view title bar (the $(git-branch) button) to see a family-tree of branches (local + remote-tracking) rendered as an SVG node-link diagram, showing which branch each one forked from. Only branches active within the last magit.branchGraph.commitDepth commits are drawn, keeping large repos readable; hover a node for its tip and fork point.
Commit history and comparison: view the commit history of any branch / tag and run two-way commit comparison in a centralized Compare panel; commit rows are annotated with merge, tag, branch and other information.
Git command log: every git command triggered by the extension and every user action is logged to the Ma Git channel in the Output panel for easy troubleshooting.
Usage
Install Ma Git from the Marketplace.
Open any Git repository and locate the BRANCHES view in the Source Control panel in the sidebar.
Expand Local / Remotes / Tags and right-click a node to use the corresponding action.
Screenshots
local-branch-menu
remote-branch-menu
branch-compare
Contact
Questions and suggestions are welcome — please open an Issue on the Marketplace page.
EMail: majj888@foxmail.com
中文
VS Code 扩展,在源代码管理(SCM)面板中提供类 IntelliJ IDEA 的 Git 分支浏览与差异对比体验。