diff --git a/README.md b/README.md index 036c37b90..d07c5f049 100644 --- a/README.md +++ b/README.md @@ -1,60 +1,52 @@ # gh - The GitHub CLI tool -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 +`gh` is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to +the terminal next to where you are already working with `git` and your code. -This tool is an endeavor separate from [github/hub](https://github.com/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. +![screenshot](https://user-images.githubusercontent.com/98482/73207890-1b7f6180-410b-11ea-9c75-d20c436eba71.png) -# Installation +## Usage -_warning, gh is in a very alpha phase_ +- `gh pr [status, list, view, checkout, create]` +- `gh issue [status, list, view, create]` +- `gh help` -## macOS +Check out the [docs][] for more information. + + +## Comparison with hub + +For many years, [hub][] was the unofficial GitHub CLI tool. `gh` is a new project for us to explore +what an official GitHub CLI tool can look like with a fundamentally different design. While both +tools bring GitHub to the terminal, `hub` behaves as a proxy to `git` and `gh` is a standalone +tool. + + +## Installation + +### macOS `brew install github/gh/gh` -## Debian/Ubuntu Linux +### Windows -1. `sudo apt install git` if you don't already have git -2. Download the `.deb` file from the [releases page](https://github.com/github/gh-cli/releases/latest) -3. `sudo dpkg -i gh_*_linux_amd64.deb` install the downloaded file +MSI installers are available on the [releases page][]. -_(Uninstall with `sudo apt remove gh`)_ +### Debian/Ubuntu Linux -## Fedora/Centos Linux +1. Download the `.deb` file from the [releases page][] +2. `sudo apt install git && sudo dpkg -i gh_*_linux_amd64.deb` install the downloaded file -1. Download the `.rpm` file from the [releases page](https://github.com/github/gh-cli/releases/latest) +### Fedora/Centos Linux + +1. Download the `.rpm` file from the [releases page][] 2. `sudo yum localinstall gh_*_linux_amd64.rpm` install the downloaded file -_(Uninstall with `sudo yum remove gh`)_ +### Other platforms -## Other Linux +There are prebuilt binaries available on the [releases page][]. -1. Download the `_linux_amd64.tar.gz` file from the [releases page](https://github.com/github/gh-cli/releases/latest) -2. `tar -xf gh_*_linux_amd64.tar.gz` -3. Copy the uncompressed `gh` somewhere on your `$PATH` (e.g. `sudo cp gh_*_linux_amd64/bin/gh /usr/local/bin/`) -_(Uninstall with `rm`)_ - -# Process - -- [Demo planning doc](https://docs.google.com/document/d/18ym-_xjFTSXe0-xzgaBn13Su7MEhWfLE5qSNPJV4M0A/edit) -- [Weekly tracking issue](https://github.com/github/gh-cli/labels/tracking%20issue) -- [Weekly sync notes](https://docs.google.com/document/d/1eUo9nIzXbC1DG26Y3dk9hOceLua2yFlwlvFPZ82MwHg/edit) - -# How to create a release - -This can all be done from your local terminal. - -1. `git tag 'vVERSION_NUMBER' # example git tag 'v0.0.1'` -2. `git push origin vVERSION_NUMBER` -3. Wait a few minutes for the build to run and CI to pass. Look at the [actions tab](https://github.com/github/gh-cli/actions) to check the progress. -4. Go to and look at the release - -# Test a release - -A local release can be created for testing without creating anything official on the release page. - -1. `git tag 'v6.6.6' # some throwaway version number` -2. `env GH_OAUTH_CLIENT_SECRET=foobar GH_OAUTH_CLIENT_ID=1234 goreleaser --skip-publish --rm-dist` -3. Check and test files in `dist/` -4. `git tag -d v6.6.6 # delete the throwaway tag` +[docs]: https://cli.github.com/manual +[releases page]: https://github.com/cli/cli/releases/latest +[hub]: https://github.com/github/hub diff --git a/releasing.md b/releasing.md new file mode 100644 index 000000000..e590c3eeb --- /dev/null +++ b/releasing.md @@ -0,0 +1,21 @@ +# Releasing + +## How to test locally + +`go test ./...` + +## How to create a release + +This can all be done from your local terminal. + +1. `git tag 'vVERSION_NUMBER' # example git tag 'v0.0.1'` +2. `git push origin vVERSION_NUMBER` +3. Wait a few minutes for the build to run and CI to pass. Look at the [actions tab](https://github.com/cli/cli/actions) to check the progress. +4. Go to and look at the release + +## How to test a release + +A local release can be created for testing without creating anything official on the release page. + +1. `env GH_OAUTH_CLIENT_SECRET= GH_OAUTH_CLIENT_ID= goreleaser --skip-validate --skip-publish --rm-dist` +2. Check and test files in `dist/`