Update readme (#255)

* update docs

- rewrite readme
- add releases.md

* whitespace

* add docs link

* do not store screenshot in repo

* simplift test release instructions
This commit is contained in:
Nate Smith 2020-01-27 14:11:44 -06:00 committed by GitHub
parent 5a59a8b117
commit 964da06793
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 55 additions and 42 deletions

View file

@ -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 <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.
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

21
releasing.md Normal file
View file

@ -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 <https://github.com/cli/cli/releases> 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/`