VSCode Extension

Revolutionize your Git Workflow

The most powerful Git GUI for VS Code. Visualize branches, stage changes, resolve conflicts, and rebase — all without leaving your editor.

See features
Commits

Stage, commit, and amend with clarity

A clean, minimalist view of your Git repository — highlighting uncommitted changes and only the commits that matter to your work.

Underneath your uncommitted changes, there's a Commit button and an Amend button. Clicking these opens the commit form sidebar on the right side, where you can write a detailed commit message.

When you're satisfied with your message, the Commit and Amend buttons at the bottom right will let you create or amend your commit.

While a command is running, you will see progress information at the bottom of the screen. This is also where error messages appear. IGL shows the arguments used to run commands, so you can replicate the behavior on the CLI if you want to.

Branches

Navigate your branch tree visually

IGL displays a tree view of your commits and branches, starting from where they diverge from the primary remote branch (usually origin/main or origin/master).

Rather than typing branch names, you can directly click on branch tags to go to them. You can also add, remove, and fetch branches directly from IGL.

Working Copy

See every change at a glance

Changes to files in your working copy appear automatically in IGL, just like running git status.

The color and icon next to files shows you if a file was modified, added, or removed. The opacity of the filename indicates whether or not the file has been staged (via git add) for commit. You can click on files to open them.

When you hover over files listed under uncommitted changes, IGL dynamically presents you with a set of actionable buttons. These buttons run Git commands, making it effortless to stage or unstage files, revert modifications, or remove newly added files — without resorting to the command line.

Rebase

Rebase and resolve conflicts inline

Hover over a branch to reveal a rebase button. Pressing it rebases your current branch onto the target.

When merge conflicts are detected, IGL adds a list of unresolved conflicts to your uncommitted changes. After resolving each file, click the plus button next to it in IGL to mark it as resolved. When all files are resolved, you're free to continue.

It's possible to hit merge conflicts multiple times — for example, when rebasing an entire stack of commits, as each commit is checked for conflicts one-by-one.

Stack Editing

Reorder, squash, or drop commits

An Edit stack button appears when you are on a branch with multiple commits.

Clicking it opens a dialog where you can reorder, squash, and drop commits. Press Save changes and IGL runs a git interactive rebase to edit the stack for you.

Frequently asked questions

Is Interactive Git Log free?

Yes. IGL is completely free on the VS Code Marketplace — no paid tier, no account required.

Does IGL work with any Git repository?

Yes. IGL works with any local Git repository regardless of where it is hosted — GitHub, GitLab, Bitbucket, or self-hosted.

How is IGL different from GitLens?

GitLens focuses on code annotations like inline blame and rich history search. IGL is a visual workflow tool: a smartlog-style branch tree where you stage, commit, rebase, and edit stacks with clicks. Many developers use both. See the full IGL vs GitLens comparison.

Does IGL replace the Git command line?

No — it runs real Git commands under the hood and shows you the exact arguments it used, so you can always reproduce or continue on the CLI. Read more in Git GUI vs command line.

Can I do an interactive rebase with IGL?

Yes. The stack editor lets you reorder, squash, and drop commits visually, then runs the interactive rebase for you.

Which operating systems are supported?

Windows, macOS, and Linux — anywhere VS Code runs.