35

I'm new to git and I'd like to be able to map plans and progress for my project through github.

The problem is, that requires lots of clicking around with a browser on github.com, and I'd like to be able to automate the task somewhat by using a command line program.

Is there a command line interface for github?

Xavier Guihot
  • 54,987
  • 21
  • 291
  • 190
Jonathan
  • 10,571
  • 13
  • 67
  • 103
  • The options have changed since the last answer. See current options here: https://stackoverflow.com/a/48913239/4752883 – alpha_989 Feb 21 '18 at 18:43

6 Answers6

22

There's a ghi gem that you can use to manage issues.

The most commonly used ghi commands are:
   list        List your issues (or a repository's)
   show        Show an issue's details
   open        Open (or reopen) an issue
   close       Close an issue
   edit        Modify an existing issue
   comment     Leave a comment on an issue
   label       Create, list, modify, or delete labels
   assign      Assign an issue to yourself (or someone else)
   milestone   Manage project milestones
bdukes
  • 152,002
  • 23
  • 148
  • 175
13

With Github's new official CLI (command line interface):

gh issue create --title "How to create an issue?" --body "I need a github CLI"

See additional details and options and installation instructions.

Xavier Guihot
  • 54,987
  • 21
  • 291
  • 190
11

You could check out this cli for the Github issues API. Note this is specific to Github Issues only.

Hope this helps.

[edit] The original answer mentioned this application which doesn't function anymore and recommends ghi.

Wolph
  • 78,177
  • 11
  • 137
  • 148
Norman Joyner
  • 955
  • 6
  • 12
  • Note that `ghi` is [using a deprecated Github API](https://github.com/stephencelis/ghi/issues/387) and will likely stop working November 2020. The current (May 2020) recommendation should be https://cli.github.com/, as per @Xavier's answer. – Michael Schubert May 21 '20 at 09:18
1

There is a github_cli gem that I'm working on that provides command line access to the entire GitHub API v3. Please give it a try and report any issue/thoughts/feature requests.

Piotr Murach
  • 547
  • 6
  • 10
1

NodeGH - Github command line tools. Let's you create new issue, comment, open or close. You can find all the commands available at their Github repo.

markphd
  • 1,394
  • 1
  • 12
  • 17
1

You have 3 options:

  1. Use the official command line interface supported by github:

    Tutorial: http://pythonhosted.org/hub/

    Github repo: https://github.com/github/hub (~12k stars)

  2. Use the NodeH interface:

    Tutorial: http://nodegh.io/

    Github repo: https://github.com/node-gh/gh

  3. Use the ghi interface:

    Tutorial and Github repo: https://github.com/stephencelis/ghi/

All 3 look cool. The hub app looks like it has the most stars and is officially supported by github. So its most likely to be maintained for the long term. So, if I were looking for a solution that would be supported for a long term, I would go with option#1: hub

alpha_989
  • 4,882
  • 2
  • 37
  • 48