关于 GitHub CLI
GitHub CLI 是一个开源工具,用于从计算机的命令行使用 GitHub。当您在命令行工作时,可以使用 GitHub CLI 节省时间并避免切换上下文。
先决条件
-
在 macOS、Windows 或 Linux 上安装 GitHub CLI。有关更多信息,请参阅 GitHub CLI 代码库中的安装。
-
要对 GitHub 进行身份验证,请从终端运行以下命令。
gh auth login
-
选择您要进行身份验证的位置
- 如果您在 GitHub.com 上访问 GitHub,请选择GitHub.com。
- 如果您在不同的域访问 GitHub,请选择其他,然后输入您的主机名(例如:
octocorp.ghe.com
)。
-
按照屏幕上的其余提示操作。
当您选择 HTTPS 作为 Git 操作的首选协议并回答“是”以确认您是否要使用您的 GitHub 凭据对 Git 进行身份验证时,GitHub CLI 会自动为您存储您的 Git 凭据。这非常有用,因为它允许您使用诸如
git push
和git pull
之类的 Git 命令,而无需设置单独的凭据管理器或使用 SSH。
一些有用的命令
注意
当您第一次使用某些命令时 - 例如,gh codespace SUBCOMMAND
- 系统会提示您向您的身份验证令牌添加额外的范围。请按照屏幕上的说明操作。
查看您的状态
输入gh status
以查看您在所有已订阅的存储库中当前在 GitHub 上的工作详情。
查看存储库
输入gh repo view OWNER/REPO
以查看存储库说明和存储库的README.md
。输入gh repo view OWNER/REPO --web
以在默认浏览器中查看存储库。
如果您在具有 GitHub 远程库的本地 Git 存储库的目录中运行repo
子命令,则可以省略OWNER/REPO
。
克隆存储库
输入gh repo clone OWNER/REPO
。例如,gh repo clone octo-org/octo-repo
将octo-org/octo-repo
存储库克隆到您在本地计算机上运行此命令的目录。
创建存储库
输入gh repo create
并按照屏幕上的说明操作。您可以在 GitHub 上创建一个新的空存储库,然后可以选择将其克隆到本地。或者,您可以将现有的本地存储库推送到 GitHub,并可以选择将其设置为本地存储库的远程库。有关将本地目录设置为 Git 存储库的信息,请参阅“将本地托管的代码添加到 GitHub”。
使用问题
输入gh issue list --repo OWNER/REPO
以列出为指定存储库当前打开的最新创建的问题。如果您在具有 GitHub 远程库的本地 Git 存储库的目录中运行issue
子命令,则可以省略--repo OWNER/REPO
。例如,输入gh issue list --assignee "@me"
以列出分配给您的此存储库中的问题,或输入gh issue list --author monalisa
以列出用户“monalisa”创建的问题。
您还可以创建新问题,请参阅创建问题,或搜索问题,请参阅筛选和搜索问题和拉取请求。
使用拉取请求
输入gh pr list --repo OWNER/REPO
以列出为指定存储库当前打开的最新创建的拉取请求。如果您在具有 GitHub 远程库的本地 Git 存储库的目录中运行pr
子命令,则可以省略--repo OWNER/REPO
。例如,输入gh pr list --author "@me"
以列出您在此存储库中创建的打开的拉取请求。
输入gh pr list --label LABEL-NAME
以列出具有特定标签的打开的拉取请求。输入gh search prs --review-requested=@me --state=open
以列出您被要求审查的拉取请求。
要创建拉取请求,请输入gh pr create
并按照屏幕上的说明操作。有关更多信息,请参阅创建拉取请求。
使用 Codespaces
要创建新的 codespace,请输入gh codespace create
并按照屏幕上的说明操作。
要显示您现有的 codespaces,请输入gh codespace list
。要在 VS Code 的 Web 版本中打开 codespace,请输入gh codespace code -w
并选择一个 codespace。
在所有这些命令中,您可以将cs
替换为codespace
。
获取帮助
输入gh
以获取您可以使用的顶级 GitHub CLI 命令的提醒。例如,issue
、pr
、repo
等等。
对于每个命令和每个附属子命令,您可以附加--help
标志以了解其使用方法。例如,gh issue --help
或gh issue create --help
。
自定义 GitHub CLI
您可以更改配置设置并添加别名或扩展,以使 GitHub CLI 能够以最适合您的方式工作。
-
输入
gh config set SUBCOMMANDS
配置 GitHub CLI 的设置,将SUBCOMMANDS
替换为您想要调整的设置。例如,您可以指定当 GitHub CLI 命令需要您编辑文本时使用的文本编辑器 - 例如,当您添加要创建的新问题的正文文本时。要将首选文本编辑器设置为 Visual Studio Code,请输入
gh config set editor "code -w"
。此示例中的-w
(或--wait
)标志会导致命令等待在 Visual Studio Code 中关闭文件,然后才能继续执行终端中的下一步。有关更多信息,请参阅
gh config set
。 -
为常用运行的命令定义别名。例如,如果您运行
gh alias set prd "pr create --draft"
,那么您就可以运行gh prd
来快速打开草稿拉取请求。有关更多信息,请参阅gh alias
。 -
使用 GitHub CLI 扩展创建或添加自定义命令。有关更多信息,请参阅使用 GitHub CLI 扩展和创建 GitHub CLI 扩展。
使用 GitHub CLI 管理多个帐户
如果您在同一个 GitHub 平台(例如 GitHub.com)上有多个帐户,您可以对每个帐户进行身份验证,并使用gh auth switch
命令在它们之间切换。请参阅 GitHub CLI 手册中的gh auth switch。
如果您需要跨多个 GitHub 平台使用 GitHub CLI,例如 GitHub.com 上的个人帐户和 GHE.com 上的托管用户帐户,请参阅跨 GitHub 平台使用 GitHub CLI。