gh /

Filename Size Date modified Message
66 B
96 B
3 B
1.0 KB
1.3 KB
4.5 KB
5 B


gh is still in its infancy. Don't use it unless you want to contribute.


  • Python 2.6+
  • Git (latest version)

gh is a thin wrapper around git to provide a Mercurial-like CLI.

$ cd someprojectthatusesgit

$ gh log -l10
... runs git log -10

$ gh diff
... runs git diff

$ gh diff --rev abc123
... runs git diff abc123

$ gh diff --change abc123
... runs git diff abc123 abc123^

$ gh branches
... runs git branch -a


You use Mercurial.

You want to contribute a patch to a project, but it uses git.

Instead of wasting your time looking up commands in git's excessively verbose documentation you can use the commands you're familiar with.


gh assumes basic knowledge about git. It's meant to save you the pain of looking up how to do something in git, not to save you from learning the basics of git!

gh runs git commands. It does not attempt to parse those commands' output and make it look like output from Mercurial. It's a tool for humans only.

gh is only meant for simple commands -- the ones you'll need 90% of the time. To do complicated stuff you'll need to learn git's CLI.


Fork, send a pull request.

To run the tests you'll need cram.

Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.