- Notifications
You must be signed in to change notification settings - Fork8k
GitHub’s official command line tool
License
cli/cli
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
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 withgit and your code.
GitHub CLI is supported for users on GitHub.com, GitHub Enterprise Cloud, and GitHub Enterprise Server 2.20+ with support for macOS, Windows, and Linux.
Forinstallation options see below, for usage instructionssee the manual.
If anything feels off or if you feel that some functionality is missing, please check out thecontributing page. There you will find instructions for sharing your feedback, building the tool locally, and submitting pull requests to the project.
If you are a hubber and are interested in shipping new commands for the CLI, check out ourdoc on internal contributions
For additional macOS packages and installers, seecommunity-supported docs
- Debian, Raspberry Pi, Ubuntu
- Amazon Linux, CentOS, Fedora, openSUSE, RHEL, SUSE
- Precompiled binaries onreleases page
For additional Linux & Unix packages and installers, seecommunity-supported docs
For additional Windows packages and installers, seecommunity-supported docs
See here on how tobuild GitHub CLI from source.
To add GitHub CLI to your codespace, add the following to yourdevcontainer file:
"features": {"ghcr.io/devcontainers/features/github-cli:1": {}}
GitHub-hosted runners have the GitHub CLI pre-installed, which is updated weekly.
If a specific version is needed, your GitHub Actions workflow will need to install it based on themacOS,Linux & Unix, orWindows instructions above.
For information on all pre-installed tools, seeactions/runner-images
Since version 2.50.0,gh has been producingBuild Provenance Attestation, enabling a cryptographically verifiable paper-trail back to the origin GitHub repository, git revision, and build instructions used. The build provenance attestations are signed and rely on Public GoodSigstore for PKI.
There are two common ways to verify a downloaded release, depending on whethergh is already installed or not. Ifgh is installed, it's trivial to verify a new release:
Option 1: Using
ghif already installed:$ gh at verify -R cli/cli gh_2.62.0_macOS_arm64.zipLoaded digest sha256:fdb77f31b8a6dd23c3fd858758d692a45f7fc76383e37d475bdcae038df92afcfor file://gh_2.62.0_macOS_arm64.zipLoaded 1 attestation from GitHub API✓ Verification succeeded!sha256:fdb77f31b8a6dd23c3fd858758d692a45f7fc76383e37d475bdcae038df92afc was attested by:REPO PREDICATE_TYPE WORKFLOWcli/cli https://slsa.dev/provenance/v1 .github/workflows/deployment.yml@refs/heads/trunk
Option 2: Using Sigstore
cosign:To perform this, download theattestation for the downloaded release and use cosign to verify the authenticity of the downloaded release:
$ cosign verify-blob-attestation --bundle cli-cli-attestation-3120304.sigstore.json \ --new-bundle-format \ --certificate-oidc-issuer="https://token.actions.githubusercontent.com" \ --certificate-identity="https://github.com/cli/cli/.github/workflows/deployment.yml@refs/heads/trunk" \ gh_2.62.0_macOS_arm64.zipVerified OK
For many years,hub was the unofficial GitHub CLI tool.gh is a new project that helps us explorewhat an official GitHub CLI tool can look like with a fundamentally different design. While bothtools bring GitHub to the terminal,hub behaves as a proxy togit, andgh is a standalonetool. Check out ourmore detailed explanation to learn more.
About
GitHub’s official command line tool
Topics
Resources
License
Code of conduct
Contributing
Security policy
Uh oh!
There was an error while loading.Please reload this page.
