Skip to content
A utility for cloning and fetching your remote git repositories from GitHub.
Branch: master
Clone or download

Latest commit

pearkes Merge pull request #29 from Mongey/master
Support > 100 repos per organisation
Latest commit c74295b May 19, 2018


Type Name Latest commit message Commit time
Failed to load latest commit information.
steps Fix go vet issue Apr 25, 2018
vendor Vendor with dep Apr 23, 2018
.gitignore ignore the tmp directories Jun 6, 2013
.travis.yml Update travis to golang 1.10.1 Apr 25, 2018 Guide for releasing new versions Jun 9, 2013
Gopkg.lock Vendor with dep Apr 23, 2018
Gopkg.toml Vendor with dep Apr 23, 2018 Initial commit May 8, 2013 Merge pull request #15 from geetarista/ignore-fullname Jun 6, 2014
main.go Fix build errors Mar 18, 2015



Build Status

gethub helps you keep all of your git repositories that have GitHub remotes up to date.


You can download a binary, deb or exe, depending on your platform.

To determine your platform:

uname -sm

On Darwin, you can copy the binary to your bin:

cp ~/path/to/gethub /usr/local/bin/

Or, if you have Go installed:

go install

Getting Started

$ gethub authorize

This asks you where you want to clone your repositories as well as creating an OAuth token for future GitHub requests.

The next time you run a gethub, all of your new repositories will be cloned and your existing repositories will be fetched.

It's useful if you have a lot of repos and may not have an internet connection.

Never leave home without running gethub.

Directory Structure

It's opinionated about how you organize your repositories.

├── pearkes
│   ├── gethub
│   ├── tugboat
│   └──
├── mitchellh
│   └── vagrant
├── amadeus
│   └── html7
├── someorg
│   └── bigproject
└── someotherorg
    └── biggerproject

Basically, your repositories will be name-spaced according to who the owner is on GitHub.

Behind the Curtain

$ gethub
  1. Checks to see if the necessary requirements for gethub exist, like it's ~/.gethubconfig file.
  2. Makes sure the path to your repositories looks ok.
  3. Clones any repositories that are missing.
  4. Runs git fetch in repositories that exist.


Configuration is stored in a .gethubconfig file in your home directory. (~/.gethubconfig)

Ignored Repositories

Sometimes you don't want to retrieve that gigantic project that someone committed .mov files to.

repo: icloud, facebook, pearkes/bootstrap
owner: adobe


Check out the contributing guide.

You can’t perform that action at this time.