Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Build Status MIT License Go Report Card


Managing multiple git repositories is easier than ever. I (was) often end up working on many directories and manually pulling updates etc. To make this routine faster, I created a simple tool to handle this job. Although the focus is batch jobs, you can still do de facto micro management of your git repositories (e.g add/reset, stash, commit etc.)

Check out the screencast of the app: asciicast


Install latest Golang release.

To install with go, run the following command;

go get

or, in Windows 10:

go install

MacOS using homebrew

brew install gitbatch

For other options see installation page


run the gitbatch command from the parent of your git repositories. For start-up options simply gitbatch --help

For more information see the wiki pages

Further goals

  • improve testing
  • add push
  • full src-d/go-git integration (having some performance issues in large repos)
    • fetch, config, rev-list, add, reset, commit, status and diff commands are supported but not fully utilized, still using git occasionally
    • merge, stash are not supported yet by go-git


  • go-git for git interface (partially)
  • gocui for user interface
  • viper for configuration management
  • color for colored text
  • kingpin for command-line flag&options