Skip to content
| Marketplace
Sign in
Visual Studio>Tools>Neo Git
Neo Git

Neo Git

Preview

Pablo Tobalina Pulido

|
120 installs
| (0) | Free
Neo Git brings Git workflow tools into Visual Studio 2022 or later: a branch graph with filtering, commit and diff views, inline editor blame, guided bisect, interactive rebase support, and an in-memory sandbox for practicing branch, merge, and rebase flows without touching a ...
Download

⚠️ Beta / Preview

  • Most features are still experimental or incomplete.
  • Feedback and bug reports are welcome.

Neo Git is a Visual Studio (2022+) extension that adds Git workflow tools to the IDE.

It was initially born to:

  • Assist more complex operations such as bisect and interactive rebase.
  • Better visualization (compared to native VS) of graphs.
  • Experiment with other useful assistance tools.

Requirements

  • Visual Studio 2022 or later.
  • Git available on PATH.

Installation

Extension Manager in Visual Studio (or download from MarketPlace).

Open Neo Git

In the Git menu of the main menu bar:

git-submenus.png

In the editor's right-click menu:

git-blame.png


Neo Git Repository (branch graph)

Main window: commit history as a graph, branches on the left, commits on the right.

git-repo.png

Commit context menu

  • Cherry-pick onto <branch> — when applicable to the current branch.
  • Interactive rebase (N children) — when the commit has children.

Bisect

Guided git bisect, hosted inside the Repository window (bisect button).

  • ← back, ↻, start, abort, reset.
  • Mark a Bad and a Good commit, then start. Classify the highlighted (gold) commit as Good/Bad until the culprit is found (highlighted red).

Compare

Diff two branches, or two commits (Ctrl+click). compare button.

  • Changed-file list (A/M/D) on the left, diff viewer on the right.
  • search in changes + replace with / replace all across the diff.

Interactive rebase

Visual git rebase -i, via the Interactive rebase (N children) context menu item.

Action Effect
pick Keep the commit as-is.
reword Edit the commit message.
squash Merge into the previous commit, keeping both messages.
fixup Like squash, but discard this commit's message.
drop Remove the commit.

Adjust actions/order (drag rows), start, resolve conflicts and continue, or abort.


Neo Git Changes (staging & commits)

Syncs with the selection in Neo Git Repository. Empty state: "Select a commit in the Branches window."

New commit

Active when the working directory row is selected.

  • Staged: ↓ unstage selected, ↓↓ unstage all.
  • Working: ↑ stage selected, ↑↑ stage all, ↶ discard (⚠️ irreversible).
  • Message, Commit, Commit & Push.

View / edit a commit

Read-only hash/author/date/branches/parents; editable message (except merge commits).

  • Save message, Cancel, Split…

Split a commit

  1. Split…, then write the extracted commit's message.
  2. Check files to move (or expand ▶/▼ to pick individual hunks).
  3. Apply split — inserts a new commit before the original with the checked changes.
  4. Cancel to abort.

Checked items go to the new commit; everything unchecked stays in the original.


Neo Git Sandbox

Fully in-memory Git simulator — never touches the real repository.

  • Left panel: branches (click to check out).
  • Right panel: commit graph, same style as Neo Git Repository.
  • Action row: commit, new branch, merge (into), rebase (onto) + OK.

The chosen action stays active after OK, so you can chain operations.


Neo Git Blame (editor margin)

  1. Open a Git-tracked file.
  2. Right-click → Neo Git Blame.
  3. A left margin shows author, hash, date, and message per line.
  • ✕ closes the margin; drag its right edge to resize.
  • ⊘ next to a commit ignores it (e.g. a bulk reformat) so its lines blame the real author; ⊘ N (top-right) clears all ignores.
  • Untracked files show no margin.
  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft