The #ce-cli team is working on a publicly available CLI tool to reduce the friction between GitHub and one's local machine for people who use the command line primarily to interact with Git and GitHub. https://github.com/github/releases/issues/659
This tool is an endeavor separate from github/hub, which acts as a proxy to git
, since our aim is to reimagine from scratch the kind of command line interface to GitHub that would serve our users' interests best.
Installation
warning, gh is in a very alpha phase
macOS
brew install github/gh/gh
Debian/Ubuntu Linux
sudo apt install git
if you don't already have git
- Download the
.deb
file from the releases page
sudo dpkg -i gh_*_linux_amd64.deb
install the downloaded file
(Uninstall with sudo apt remove gh
)
Fedora/Centos Linux
- Download the
.rpm
file from the releases page
sudo yum localinstall gh_*_linux_amd64.rpm
install the downloaded file
(Uninstall with sudo yum remove gh
)
Other Linux
- Download the
_linux_amd64.tar.gz
file from the releases page
tar -xf gh_*_linux_amd64.tar.gz
- Copy the uncompressed
gh
somewhere on your $PATH
(e.g. sudo cp gh_*_linux_amd64/bin/gh /usr/local/bin/
)
(Uninstall with rm
)
Process
How to create a release
This can all be done from your local terminal.
git tag 'vVERSION_NUMBER' # example git tag 'v0.0.1'
git push origin vVERSION_NUMBER
- Wait a few minutes for the build to run and CI to pass. Look at the actions tab to check the progress.
- Go to https://github.com/github/homebrew-gh/releases and look at the release
Test a release
A local release can be created for testing without creating anything official on the release page.
git tag 'v6.6.6' # some throwaway version number
env GH_OAUTH_CLIENT_SECRET=foobar GH_OAUTH_CLIENT_ID=1234 goreleaser --skip-publish --rm-dist
- Check and test files in
dist/
git tag -d v6.6.6 # delete the throwaway tag