Minimalist Git
Interactive log graph, working tree & commit diffs, and integrated git commands.
Core Features
- Interactive Log Graph: View the commit history for all branches, including the working tree and stashes, in a clear graphical format.
- Powerful Filtering: The log can be filtered by author, message content (
--grep), date (--before, --after), and file path. Filters are stackable for precise history navigation.
- Diff Viewing: Easily compare any two commits or view changes in the working tree.
- Integrated Git Operations: Perform common Git tasks like commit, stage, unstage, discard, fetch, pull, push, and manage stashes and tags without leaving the extension's view.
- Conflict Resolution: During a rebase, merge, or cherry-pick, the extension provides options to continue, skip, or abort the process.
Usage
Main View
The extension's main view is divided into three parts:
- Toolbar: Quick access to common Git commands.
- Commit List: The interactive log graph showing commit history.
- Change List: Shows the current working tree, staged files, and file-level diffs for a selected commit.
- Fetch: Fetches from the remote.
- Pull: Pulls changes, with a default strategy of
--rebase --autostash.
- Push: Pushes committed changes. The overflow menu contains Push --force.
- Commit: Commits selected files from the Changes List. The overflow menu contains Amend Last Commit.
- Stage / Unstage: Stages or unstages selected files.
- Discard: Discards changes to selected files.
- Stash: Stashes current changes.
Right-clicking on a commit, branch, or stash in the log view reveals a context menu with powerful actions.
On a Commit:
Checkout commit
Cherrypick commit
Revert commit
Merge commit into current branch
Reset branch to this commit (hard)
Start interactive rebase from commit
Copy commit hash / Copy commit message
Add tag / Delete tag
On a Stash:
During a Sequencer Operation (Rebase/Merge/Cherry-Pick):
Continue rebase / Abort rebase
Continue merge / Abort merge
Continue Cherry-Pick / Abort Cherry-Pick
Right-clicking a file in the changes list provides file-specific actions:
File History
Open File
Reveal In Explorer

theme: VSCode Minimalist Theme (Oak)
Visual Studio Marketplace
This extension is available on the Visual Studio Marketplace for Visual Studio Code.
Known Issues
- The graph only displays the most recent 500 commits.
- No localization support.
spawn ENAMETOOLONG error when working with a very large number of files (committing, staging, etc.)
Release Notes
0.9.4
0.9.6
- Fixed
push --force command.
- Tweaked extension icon.
- Excluded
screenshots and tests folders from package.
0.9.7
- Fixed
push command!
- Fixed incorrect diff URIs when the working directory is a subdirectory of the repo directory.
- Added manual
refresh command to the overflow menu
0.9.8
- Actually fixed
push & push --force commands :D
- Fixed the manual
refresh command!
- Fixed repo change detection when the working directory is a subdirectory of the repo directory.
0.9.9
- Added Seti icons in change list.
- Fixed oneshot-discarding of tracked + untracked files.
- Fixed repo change detection issue where the final change event in commands that execute multiple git operations was ignored.
0.9.10
- Added resizing commit messagebox.
- Added
Enter-to-commit functionality.
- Fixed discarding of renamed files.
0.9.11
0.9.12
- Updated scrollbar + resizer styling.
- Added
DIFF to diff editor tab title.
0.9.13
- Fixed
commit --amend command with multiple files.
0.10.0
- Removed
simple-git dependency.
0.10.1
- Fixed an internal exception.
- Fixed add tag command not working.
- Removed unnecessary renders on repo change.
0.10.2
- Fixed a bug where the incorrect
stash command was used.
0.10.3
- Fixed a bug where the
status command didn't list individual files under 'untracked directories'.
0.10.4
- Fixed a bug where untagged commits still registered as having an 'undefined' tag!
- Fixed
commit --amend command without any files.
0.10.5
- Fixed a bug where
discard wasn't working.
0.10.6
- Fixed a bug where commit message tooltip wasn't HTML-encoded so it could break EVERYTHING!!
0.10.7
- Fixed a bug where the 'welcome' page check threw!
0.10.8
- Updated seti file icon font.
0.10.9
- Added
init repository option in the welcome page.
- Fixed a bug where some error messages weren't properly surfaced to the user.
0.10.10
- Added filter by file in graph search.
- Added
File History entry in explorer context menu.
0.10.11
- Fixed a bug where resolving diff URIs failed when renamed/deleted files are staged.
0.10.12
- Fixed a bug the
File History didn't automatically trigger the filter
0.10.14
- Fixed a bug where file paths in the changes list could have quotes which would badly mess up the markup!
0.11.0
- Added
Open File context menu command in Changes List.
- Added
Reveal File In Explorer context menu command in Changes List.
- Added
File History context menu command in Changes List.
- The empty file in the diff view is now readonly!
0.11.1
- Improved the commit behavior to commit staged files if no changed files were selected
- Fixed a bug related to
diff, open-file and reveal-in-explorer functions when the repo is in a parent directory of the workspace directory
- Fixed a bug where the commit message was cleared when no files were selected or the commit command fails
0.11.2
- Fixed a bug where the commit message was cleared if there were no selected files to commit (and none were staged)
0.12.0
- Fixed a bug where the commit list would reset to selecting the
Working Tree whenever the repo state changes.
- Improved performance of repo state change detection.
0.12.1
- Improved UX of search field (when clicking the clear button, the commit list will be updated automatically)
0.12.2
- Added
Run garbage collector command (overflow menu).
- Added
Publish branch command (overflow menu).
- Slightly improved UX of search field by formatting the tooltip and changing the placeholder text.
- Fixed a bug where the
push command would fail silently if the remote had more recent commits than the local.
- Fixed a bug where the extension showed a blank screen after initializing a repository in the workspace directory.
| |