什么是 GitHub CLI?如何从命令行使用 GitHub
GitHub CLI(命令行界面)是 GitHub 开发的一款强大工具,允许开发者直接从终端与 GitHub 交互。它提供了一种简单的方式,在不离开命令行界面的情况下执行许多 GitHub 任务,例如管理仓库、处理拉取请求和问题、使用 GitHub Actions 等。
在本教程中,您将学习什么是 GitHub CLI,如何安装和设置它,以及如何将其用于日常任务,例如创建仓库、管理问题和拉取请求、使用 GitHub Actions 以及使用自定义别名自动化任务。您将学习如何用终端中的快速命令替换 GitHub 网页界面上的某些功能。
以下是我们将介绍的内容:
- GitHub CLI 概述
- 主要功能
- 使用 GitHub CLI 的好处
- 安装和设置
- 使用 GitHub 账户进行身份验证
- 导航 GitHub CLI
- 管理仓库
- 处理拉取请求和问题
- 推送和拉取更改
- 使用 GitHub Actions
- 管理 Gists
- 发布和标签
- 自定义脚本和别名
- 故障排除
- 结论
GitHub CLI 概述
您可以使用 GitHub CLI 来弥合 GitHub 网页界面与本地环境之间的差距。您可以使用 CLI 执行各种任务,例如创建问题、管理仓库,甚至检查 GitHub Actions 工作流的状态。使用 CLI,您可以执行几乎所有可能在 GitHub 网站上完成的任务。
GitHub CLI 的主要功能
- 仓库管理:轻松创建、克隆、查看和管理仓库。
- 拉取请求和问题:直接从终端管理拉取请求和问题,包括创建、合并和列出它们。
- GitHub Actions:与工作流交互并管理工作流运行。
- 身份验证:提供一种安全的方式与您的 GitHub 账户进行身份验证,支持 SSH 密钥、令牌和 OAuth。
- 自定义脚本:允许您创建自定义脚本和别名,以自动化重复性任务并简化开发流程。
使用 GitHub CLI 的好处
安装和设置
要在 Windows 上安装 GitHub CLI,您可以使用 winget 包管理器。Winget 是一个命令行工具,允许您轻松安装软件。
在 Windows、macOS 和 Linux 上安装 GitHub CLI
Windows: 运行下面给出的命令:
|
|
winget install
:告诉 Windows 安装一个新的软件包。--id GitHub.cli
:指定 GitHub CLI 的确切包 ID。
运行此命令后,GitHub CLI 将安装在您的 Windows 系统上。
macOS: 您可以使用 Homebrew 在 macOS 上安装 GitHub CLI。打开终端并运行:
|
|
Linux: 在 Linux 上,您可以使用您的包管理器。例如,在 Ubuntu 上,您可以运行:
|
|
使用 GitHub 账户进行身份验证
安装 GitHub CLI 后,下一步是使用您的 GitHub 账户对其进行身份验证。
运行身份验证命令:
在终端中输入 gh auth login
并按 Enter。
|
|
然后,系统将提示您选择身份验证方法。推荐的选项是通过 Web 浏览器进行身份验证。
如果您选择浏览器方法,GitHub CLI 将在您的默认浏览器中打开一个链接,您可以在其中登录 GitHub。
完成身份验证: 登录后,浏览器将确认 GitHub CLI 已连接到您的账户。
您可以通过运行以下命令来验证身份验证状态:
|
|
导航 GitHub CLI
GitHub CLI 易于导航,其命令结构直观。
命令结构和语法
GitHub CLI 命令遵循简单直接的模式:
|
|
- Subcommand:命令中的特定任务(例如,
create
、list
、view
)。 - Flags:修改命令行为的可选参数(例如,
--title
、--body
)。
常用命令和标志
以下是一些常见的 GitHub CLI 命令:
-
创建仓库:
gh repo create
-
创建拉取请求:
gh pr create
-
查看仓库详情:
gh repo view
要查看所有可用命令和选项,您可以随时运行:
|
|
如何使用 GitHub CLI 管理仓库
让我们看一些您最常使用的命令示例。
创建和克隆仓库
要直接从终端创建一个新的 GitHub 仓库,只需使用以下命令:
|
|
要克隆现有仓库,请使用以下命令:
|
|
管理分支和拉取请求
GitHub CLI 允许您在不离开终端的情况下处理问题和拉取请求(PR)。
切换分支或创建拉取请求很简单。要创建一个新分支:
|
|
然后,创建拉取请求:
|
|
推送和拉取更改
使用以下命令将您的更改推送到 GitHub:
|
|
并使用以下命令拉取最新更改:
|
|
使用 GitHub Actions
GitHub CLI 还支持 GitHub Actions,允许您直接从终端管理工作流。
您可以使用以下命令手动触发工作流:
|
|
您可以使用以下命令监视工作流的状态:
|
|
要查看工作流的详细日志,请运行:
|
|
克隆和复刻仓库
在处理来自其他仓库的项目时,克隆和复刻是基本任务。
要克隆一个仓库,请使用此命令:
|
|
要复刻一个仓库,请执行以下操作:
|
|
示例: 如下所示:
|
|
|
|
如何使用 GitHub Actions
使用 GitHub CLI,您还可以管理 GitHub Actions,这些是您可以运行以响应仓库中特定事件的自动化任务。
触发和监视工作流
您可以像这样手动触发工作流:
|
|
您可以使用以下命令监视工作流运行:
|
|
管理工作流运行和日志
如果您想检查特定工作流运行的详细信息,可以直接从 CLI 查看日志:
|
|
您还可以使用 GitHub CLI 命令来增强您的持续集成/持续部署(CI/CD)流水线,确保流畅的自动化并更好地控制我们的工作流。
如何更新 GitHub CLI
为确保您使用的是具有所有最新功能和修复的最新版本的 GitHub CLI,您可以使用 winget 进行更新。
|
|
winget upgrade
:检查指定包的更新。--id GitHub.cli
:标识要升级的 GitHub CLI 包。
高级 GitHub CLI 功能和集成
GitHub CLI 不仅可用于执行基本任务。您还可以借助它执行一些高级操作。
如何使用 GitHub CLI 管理 Gists
Gists 是一种共享代码片段的简单方法。您可以直接从 CLI 创建、列出和管理您的 Gists。以下是创建 gist 的方法:
|
|
要列出您的 gists:
|
|
与发布和标签交互
为了管理发布和标签,GitHub CLI 提供了创建、列出和删除发布的命令。以下是创建发布的示例:
|
|
如何使用自定义脚本和别名扩展 GitHub CLI
您可以编写自己的脚本并将其集成到 GitHub CLI 中,或者为您经常使用的命令创建别名以节省时间。别名让您为您经常使用的命令创建快捷方式。例如,下面给出的命令创建了一个别名 prlist
,它将显示所有拉取请求,无论其状态如何:
|
|
同样,您可以创建一个快捷方式 co
来快速检出拉取请求分支,而无需每次都输入完整命令。命令如下:
|
|
故障排除常见问题
如果您遇到任何问题,可以通过检查命令语法、确保您的 GitHub CLI 是最新的或使用以下命令查阅文档来进行故障排除:
|
|
结论
GitHub CLI 是一个出色的工具,可帮助开发者直接从终端工作。它允许您管理仓库、处理拉取请求和问题、触发和监视 GitHub Actions,甚至使用 Gists。
作为开发者,使用这个强大的工具可以节省时间并提高生产力。继续探索它的新功能并随时了解最新版本。