GitHub CLI - 将 GitHub 带入命令行

GitHub CLI(或gh)是 GitHub 的命令行界面,可在终端或脚本中使用。

使用GitHub CLI,开发者可以从命令行检查GitHub问题和拉取请求的状态,搜索特定的问题或拉取请求,创建/分叉存储库,或直接从命令行创建新问题和拉取请求。

在这篇文章中,我们将介绍一些常见的日常开发者工作流程。在这个过程中,我们将重点关注如何使用GitHub CLI 管理我们的问题和拉取请求。

什么是 GitHub CLI

GitHub CLI最好被描述为"从命令行访问的GitHub"。

目前,GitHub CLI 的版本为 v2.39.1。它主要围绕三个GitHub项目的功能组成:

  1. Issues(问题): 允许你检查、创建和管理GitHub仓库中的问题。
  2. Pull Requests(拉取请求): 允许你查看、创建和管理拉取请求,这是贡献代码变更的主要方式。
  3. Repositories(存储库): 允许你创建、复制和管理GitHub仓库。

使用GitHub CLI,开发者可以执行以下与不同工件相关的命令

  • create(创建): 创建新的问题或拉取请求。
  • list(列表): 列出问题、拉取请求或存储库。
  • status(状态): 查看问题或拉取请求的状态。
  • view(查看): 查看详细信息,可能是问题、拉取请求或存储库的详细信息。
  • checkout(仅限拉取请求): 签出(切换到)特定的拉取请求。
  • clone(仅限存储库): 克隆特定的存储库。
  • fork(仅限存储库): 复制存储库以创建一个分支(fork)。

正如之前提到的,在本文中,我们将仅关注与问题和拉取请求相关的命令。这些命令允许开发者通过命令行轻松地管理和与GitHub上的问题和拉取请求交互。

使用 GitHub CLI 管理 GitHub 问题

如果在你的开发流程中经常需要处理 GitHub 问题,那么 GitHub CLI 可能有一些对你有帮助的命令。让我们来看看典型的工作日可能是什么样子,重点介绍使用 GitHub CLI 处理 GitHub 问题的一些示例。

  • 列出 GitHub CLI 的问题

    描述 命令
    列出项目中的所有问题 gh issue list
    列出项目中的所有问题,包括已关闭的。"all" 表示列出所有状态的问题 gh issue list --state "all"(或gh issue list -s "all")
    列出所有分配给特定用户("n8ebel")的项目中的问题 gh issue list --assignee "n8ebel"(或 gh issue list -a "n8ebel")
  • 使用 GitHub CLI 检查问题状态

    描述 命令
    显示项目中相关问题的状态 gh issue status
    列出项目中所有已关闭的问题 gh issue list --state "closed"(或 gh issue list -s "closed")
    列出项目中带有特定标签("bug")的问题 gh issue list --label "bug"(或 gh issue list -l "bug")
  • 使用 GitHub CLI 查看问题

    描述 命令
    查看项目中特定问题的详细信息,其中 15 是问题的编号 gh issue view 15
    列出项目中由指定用户("n8bel")负责且带有特定标签("bug")的问题 gh issue list -a "n8bel" -l "bug"
  • 使用 GitHub CLI 创建问题

    描述 命令
    创建新问题 gh issue create
    创建一个标题为 "title",正文为 "description" 的新问题 gh issue create -t "title" -b "description"
    用于在浏览器中通过 GitHub 网页界面创建新问题 gh issue create --web

使用 GitHub CLI 管理拉取请求

  • 列出拉取请求

    描述 命令
    列出项目中所有拉取请求 gh pr list
    列出项目中所有拉取请求,包括打开的和关闭的 gh pr list --state all(或 gh pr list -s "all")
    列出由特定用户(assignee)负责的拉取请求 gh pr list --assignee "n8ebel"(或 gh pr list -a "n8ebel")
  • 检查拉取请求状态

    描述 命令
    列出所有状态的拉取请求 gh pr status
    列出所有已关闭的拉取请求 gh pr list --state "closed"(或gh pr list -s "closed")
    列出所有带有 "bug" 标签的拉取请求 gh pr list --label "bug"(或gh pr list -l "bug")
  • 查看拉取请求

    描述 命令
    列出拉取请求编号为 14 的详细信息 gh pr view 14
    列出由用户 "n8bel" 创建且带有 "bug" 标签的所有拉取请求 gh pr list -a "n8bel" -l "bug"
  • 创建拉取请求

    描述 命令
    创建新拉取请求 gh pr create
    创建一个标题为 "title",正文为 "description" 的新拉取请求 gh pr create -t "title" -b "description"
    用于通过网页界面创建新拉取请求 gh pr create --web
    检出与拉取请求编号为 14 相关的拉取请求,包括来自分叉的拉取请求 gh pr checkout 14

通过使用 GitHub CLI,开发者可以在不离开终端的情况下,更加高效地处理项目的问题和拉取请求,从而提高开发工作流的整体效率。

相关推荐
醉城夜风~37 分钟前
CSS元素显示模式(display)
前端·css
栈溢出的浪漫1 小时前
国内MCP工具推荐:AIbase宣布推出MCP资源网站
github·开发者·mcp·aibase·资源网站
AI大模型-小华1 小时前
Codex 三方充值快速入门指南
java·前端·数据库·chatgpt·ai编程·codex·chatgpt pro
一可米2 小时前
gitHub.com Actions自动化发布
运维·自动化·github
做前端的娜娜子4 小时前
同一链接实现 PC Web 与移动 H5 自适应
前端·掘金·金石计划
小帅不太帅4 小时前
架构没变、规模没变,DeepSeek V4 Flash 正式版凭什么暴涨 47 分?
前端·aigc·deepseek
小弥儿4 小时前
GitHub今日热榜 | 2026-08-01:硬件安全工具与AI教育并行
人工智能·学习·开源·github
jarvisuni4 小时前
DeepSeekFlash前端依旧拉垮,而且变慢了很多!
前端·javascript·算法
卷福同学5 小时前
AI编程出海第二步:验证关键词能否做站
前端·人工智能·后端