GitHub CLI brings GitHub to your terminal. It reduces context switching, helps you focus, and enables you to more easily script and create your own workflows. Earlier this year, we announced the beta of GitHub CLI. Since we released the beta, users have created over 250,000 pull requests, performed over 350,000 merges, and created over 20,000 issues with GitHub CLI. We’ve received so much thoughtful feedback, and today GitHub CLI is out of beta and available to download on Windows, macOS, and Linux.
With GitHub CLI 1.0, you can:
- Run your entire GitHub workflow from the terminal, from issues through releases
- Call the GitHub API to script nearly any action, and set a custom alias for any command
- Connect to GitHub Enterprise Server in addition to GitHub.com
Use GitHub CLI for your entire GitHub workflow.
- Clone the repository you want to work with using
gh repo clone owner/repo.
- Find the next thing you need to work on with
gh issue statusor
gh issue list --assignee billygriffin.
- When you’ve finished adding that feature or fixing that bug, use
gh pr createto create your pull request on GitHub.
- And your teammate can check out your pull request using
gh pr checkout 1337, view the diff with
gh pr diff, and even provide a lightweight review using
gh pr review.
- After the pull request is approved, you can make sure all your tests are passing with
gh pr checks, and then go ahead and merge it right from your terminal with
gh pr merge. GitHub CLI will even offer to delete your branch locally and on GitHub.com after the merge.
- And when you’re ready to cut your next release, just use
gh release create [tag name]and make your creation available to the world without ever leaving your command line!
GitHub CLI now allows you to create aliases for any command using
gh alias set. And with the powerful
gh api allowing you to access the GitHub API directly, there’s no limit to what you can do with
gh. Commands are also easily composable.
Here’s a tip: to share your aliases with a gist, you can use
gh alias list | gh gist create. If you think of a cool way to work with aliases using GitHub CLI, tweet at us @github!
Finally, you can use GitHub CLI with repositories hosted on GitHub Enterprise Server 2.20+. This has been the most frequent request since we announced the beta, and we’re excited that more and more people using GHES will be able to also use GitHub CLI.
- Adding metadata to issue and pull request views (Thank you, @doi-t!)
- Allowing selection of blank templates (Thank you, @AliabbasMerchant!)
- Filtering issues by milestone, mentioned, and author (Thank you, @eddumelendez!)
- Aligning repo create to other create commands (Thank you, @ShubhankarKG!)
Based directly on feedback you gave us during the beta, we’ve released features allowing you to:
- create and view repositories
- configure GitHub CLI to use SSH and your preferred editor
- close, reopen, and add labels, assignees, and more to issues and pull requests, and
- view the diff, review, and merge pull requests
We’re excited to work with you to make GitHub CLI better every day. We have a lot planned for future versions of GitHub CLI, including support for editing issues and pull requests, and adding comments. We’re so grateful for all the fantastic ideas and collaboration we’ve seen so far, and we look forward to your continued feedback and contributions.