Skip to content
| Marketplace
Sign in
Visual Studio Code>SCM Providers>GitCrewNew to Visual Studio Code? Get it now.
GitCrew

GitCrew

Kanaihya Kumar

|
2 installs
| (0) | Free
GitCrew is an interactive Git workbench for VS Code: browse status, branches, and history, and run merges, rebases, cherry-picks, stashes, and guided multi-branch release workflows through a friendly UI with previews, animations, and in-panel conflict resolution.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

GitCrew

An interactive, visual Git workbench for VS Code. Browse your repository status, branches, and history, then run everyday and advanced Git operations - merge, rebase, cherry-pick, stash, reset, tag, and guided multi-branch release workflows - through a friendly UI that previews exactly what will happen, plays a short animation of the concept, and only runs after you confirm.

It also bundles a branch-drift radar that highlights lines other branches changed so you can spot merge conflicts before they happen.

Built so a developer, tester, or anyone on the team can perform Git tasks confidently without memorizing commands.

Highlights

  • GitCrew panel - a dedicated view in the Activity Bar (the GitCrew icon) with tabs for Status, Actions, Branches, History, and Workflows.
  • See before you do - every action shows the exact git commands, a plain-language impact summary, and warnings for anything destructive.
  • Learn as you go - each action has a short guide and an animated diagram of what the command does.
  • In-panel conflict resolution - when something conflicts, resolve it right in the panel and continue, without dropping to the terminal.
  • Smart main-branch detection - automatically finds main, master, trunk, or whatever your team uses, and lets you override it.
  • Team workflows - one-click automation for the release-freeze pattern where the same change must land on a temporary maintenance branch and on main.

The GitCrew panel

Open it from the GitCrew icon in the Activity Bar, or run GitCrew: Open GitCrew from the Command Palette.

Status tab

  • Current branch with ahead/behind counts and the detected main branch (click the main-branch chip to change it).
  • Staged, unstaged, untracked, and conflicted files. Click any file to open a diff against HEAD.
  • Inline actions to stage, unstage, or discard individual files.
  • A commit box to write a message and commit (optionally staging everything first).
  • Quick buttons for Fetch, Pull, Push, and Stash.

Actions tab

Every command is grouped so you can find it fast. Click a group to expand it, click an action to open it.

Group Actions
Branches Switch, Create, Rename, Delete, Publish
Stage & Commit Stage, Unstage, Commit (with amend), Discard, Clean untracked
Sync Fetch, Pull, Push (with force-with-lease, upstream, tags)
Integrate Merge, Rebase, Cherry-pick, Revert
Stash Stash, Apply/Pop, Drop
Undo & Recovery Reset (soft/mixed/hard), Restore files
Tags Create, Delete, Push tags
Remotes Add, Remove
Team Workflows Commit to Multiple Branches, Replicate Changes to Parallel Branches, Propose Merges to Multiple Branches

When you open an action you get:

  1. An animation illustrating the concept.
  2. A guide explaining what it does and when to use it.
  3. A form that asks only for what it needs (branch names, commit messages, options), with pickers pre-filled from your repository.
  4. A live Preview panel showing the exact commands, the impact, and any warnings.
  5. A Run button. For destructive actions (rebase, reset, clean, force push, delete, discard) Run stays disabled until you have seen the preview.

Results are shown step-by-step, including the output of each command, so nothing is hidden.

Branches tab

Lists local branches (with ahead/behind and current marker) and remote branches. Hover a branch for one-click Switch, Merge into current, Rebase onto, or Delete - each opens the matching action pre-filled and previewed.

History tab

A commit graph of recent history with refs, author, and date. Hover a commit to Cherry-pick it, Revert it, Reset to it, or copy its SHA.

Workflows tab

The three guided team workflows, described below.

Resolving conflicts in the panel

Merges, rebases, cherry-picks, and the team workflows can hit conflicts. When they do, a red Conflicts banner appears at the top of GitCrew and stays until you finish - you never have to drop to the terminal:

  • Every conflicted file is listed with actions: open the merge editor, keep current (ours), take incoming (theirs), or mark resolved (stage it).
  • Continue finishes the operation once no conflicts remain. For a plain merge/rebase/cherry-pick it runs the matching --continue; for a paused team workflow it resumes the remaining branches automatically.
  • Abort safely backs out. For workflows it restores your original branch and keeps your work (the stash is preserved for Replicate), so nothing is lost.

Because of this, the team workflows now pause on a conflict instead of giving up - you resolve it in the panel and click Continue to carry on with the branches that are left.

Smart main-branch detection

Many teams don't use main. GitCrew figures out your trunk in this order:

  1. Your gitcrew.mainBranch setting, if set.
  2. origin/HEAD (the remote's default branch).
  3. git config init.defaultBranch.
  4. Common names: main, master, trunk, develop, development, default - local first, then on origin.

If it still can't tell, click the main-branch chip in the header and pick one. Your choice is saved to the workspace.

Team workflows

These automate a common release-freeze situation: while main is frozen you collect approved changes on a temporary branch (for example maintemp), and some changes must also go straight to main.

Commit to Multiple Branches

Commit your staged changes on the current branch, then mirror that exact commit onto one or more other branches and push them all.

  • Under the hood it commits once, then git switch + git cherry-pick onto each target, and optionally pushes each branch.
  • If a cherry-pick hits a conflict, the flow pauses on that branch. Resolve it in the Conflicts banner and click Continue; the branches updated before the conflict stay updated and the remaining ones carry on. Or Abort to back out.

Use it when a hotfix must land on both a release branch and main.

Replicate Changes to Parallel Branches

Take your current uncommitted changes onto fresh feature branches cut from several bases - for example a feature branch off maintemp (login-maint) and another off main (login).

This replaces the manual dance of "switch, pull, branch, stash, apply, commit, push - then do it all again for the other base." You just:

  1. Add one row per base and name the new branch for each (e.g. maintemp → login-maint, main → login).
  2. Write one commit message and choose whether to pull each base first and whether to push.

Under the hood it stashes your changes once, then for each row: switches to the base, optionally pulls it, creates the new branch, applies the stash, commits, and optionally pushes. The stash is only dropped after every branch succeeds, so nothing is lost if a step fails. If applying the stash conflicts on a base, the flow pauses so you can resolve it in the Conflicts banner and click Continue; your stash is kept the whole time.

Propose Merges to Multiple Branches

Sometimes the same branch needs to be merged into more than one long-lived branch - for example a fix on your feature branch should be proposed into both main and a postrelease branch. This workflow opens a pull request into each base for you.

  1. Pick the branch to propose (defaults to your current branch) and check the base branches to open a pull request into.
  2. It pushes your branch once, then opens a pull request page for each base (base ← your branch) in your browser.

The result is one pull request per base, e.g. "merge login into main" and "merge login into postrelease", which reviewers can accept independently. It detects your host from the remote URL and builds the right link for GitHub, GitLab, Bitbucket, and Azure DevOps.

Branch-drift radar

While you work, GitCrew scans other recently committed branches and shows what they changed in the files you are editing.

  • Editor highlights - lines changed on another branch get a subtle whole-line highlight; if you also edited them, it escalates to a warning color ("potential conflict"). Hover for branch, author, date, and commit subject.
  • Branch Drift tree view - in the Source Control sidebar, each branch lists the files it changed; click one to diff it against your HEAD.
  • Status bar - shows Drift: N files and turns warning-colored when any overlap your local edits.

Enjoying GitCrew?

If GitCrew saves you time, a quick rating really helps others find it. GitCrew shows a gentle prompt after you have used it for a while, with Rate GitCrew, Remind me later, and No thanks - your choice is remembered. You can also click the ★ in the panel header, or run GitCrew: Rate GitCrew any time, to open the review page.

Commands

Command What it does
GitCrew: Open GitCrew Reveal the GitCrew panel
GitCrew: Refresh GitCrew Re-scan status, branches, and history
GitCrew: Rate GitCrew Open the review page to rate the extension
GitCrew: Refresh Branch Drift Rescan branches and update drift indicators
GitCrew: Set Drift Base Branch Pick the fallback merge target for drift detection
GitCrew: Open Drift Diff for Current File Diff the current file against a branch that changed it
GitCrew: Toggle Drift Decorations Show or hide the drift editor highlights

Most Git operations are performed from the GitCrew panel rather than the Command Palette.

Settings

Setting Default Description
gitcrew.mainBranch "" Your main/trunk branch. Empty auto-detects from origin/HEAD, git config, and common names
gitcrew.baseBranch "" Fallback merge target for drift detection; empty auto-detects origin/main or origin/master
gitcrew.ignoreBranches ["origin/HEAD"] Glob patterns for branch names GitCrew skips, e.g. release/*
gitcrew.maxBranches 10 How many of the most recently committed branches GitCrew scans
gitcrew.refreshMinutes 5 Automatic drift rescan interval in minutes; 0 disables it
gitcrew.showDecorations true Show inline drift decorations in the editor

Getting started

  1. Open a folder that contains a git repository.
  2. Click the GitCrew icon in the Activity Bar.
  3. Use the Status tab for day-to-day work, the Actions tab to run any Git command with a preview, and the Workflows tab for multi-branch release flows.
  4. If the main branch chip looks wrong, click it and pick the right one.

Safety notes

  • Nothing runs until you press Run; destructive actions require you to view the preview first.
  • Previews use read-only git queries (dry runs, rev-list counts, diff stats) and never modify your repository.
  • Multi-step workflows stop at the first failure and report exactly where, so you are never left guessing.

Requirements

  • VS Code 1.85.0 or higher
  • git installed and on your PATH
  • A git repository in the first workspace folder

Author

Kanaihya Kumar - kanaihyakmr@gmail.com

License

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft