About GitHub CLI
A few months ago the GitHub CLI had their first 1.0 release, you can read more about it on their announcement blog. It promises to make working with GitHub easier. I challenge you to find someone that didn’t mess up their first
git push. Anyway, I had been meaning to try it out when it was released but only got around to it recently. I’ve written down my notes.
As expected on my Mac …
brew install gh
One time set up was easy enough.
$ gh auth login ? What account do you want to log into? GitHub.com - Logging into github.com ? How would you like to authenticate? Login with a web browser ! First copy your one-time code: 13D8-ABCD - Press Enter to open github.com in your browser... ✓ Authentication complete. Press Enter to continue... ? Choose default git protocol SSH - gh config set -h github.com git_protocol ssh ✓ Configured git protocol ✓ Logged in as stevemar
Type in the auth code
We’re all set!
Using the CLI
Clone a repo
Simply run the command below. Note, that I did need to delete the existing repo I had cloned locally first, then reclone it.
gh repo clone IBM/helm101
Create a new repo
Another one liner with lots of options.
$ gh repo create stevemar/repo-test ? Visibility Public ? This will create 'stevemar/repo-test' in your current directory. Continue? Yes ✓ Created repository stevemar/repo-test on GitHub ? Create a local project directory for stevemar/repo-test? Yes Initialized empty Git repository in /Users/stevemar/workspace/temp/repo-test/repo-test/.git/ ✓ Initialized repository in './repo-test/' $ cd repo-test $ ll drwxr-xr-x 3 stevemar staff 96B 11 Jan 13:49 . drwxr-xr-x 4 stevemar staff 128B 11 Jan 13:49 .. drwxr-xr-x 9 stevemar staff 288B 11 Jan 13:49 .git
Yay, new repo
Creating an issue
This was fun, much like a git commit message, it popped open my editor.
$ gh issue create Creating issue in stevemar/repo-test ? Title Create content for the repo ? Body <Received> ? What's next? Submit https://github.com/stevemar/repo-test/issues/1
The last test I did …
$ gh issue list Showing 1 of 1 open issue in stevemar/repo-test #1 Create content for the repo about 1 minute ago
You can tell that a lot of love and effort went into this CLI. It’s pretty damn good.