GitHub CLI:在终端管理 Pull Request 和 Issue 的完整指南
【免费下载链接】cliGitHub’s official command line tool项目地址: https://gitcode.com/GitHub_Trending/cli/cli
写完代码想确认 PR 检查是否通过,你得切到浏览器、翻进仓库、点开对应页面。GitHub CLI(gh)把 Pull Request、Issue 这些 GitHub 操作搬进终端,紧挨着你的 git 命令。
一个住在终端里的「调度员」
GitHub CLI 是 GitHub 官方的命令行工具,核心功能是把平台侧的协作业务接到你敲 git 的那个窗口里:查 PR、看 Issue、建仓库、发 Release,一条命令的事。
你负责写代码,它负责跑腿。它接收终端里的一句话,翻译成 GitHub 平台的 API 调用,再把结果用表格和颜色摆回屏幕上。对每天在仓库里打转的开发者,尤其是习惯脚本化干活的人,这就是它最大的卖点。
所有子命令都是独立模块,按领域分目录实现,想看某个命令的内部逻辑可以直接翻 pkg/cmd/,比如pr相关逻辑就在 pkg/cmd/pr/ 下。
5分钟装好并完成首次登录
安装走各平台的包管理器,一条命令的事:
# macOS 用 Homebrew brew install gh # Ubuntu/Debian 用 apt sudo apt install gh # Windows 用 WinGet winget install --id GitHub.cli装完做一次身份验证,之后所有命令都带着你的授权:
# 在终端内完成 GitHub 授权,会给出确认链接 gh auth login # 第一条命令:概览当前仓库里和你相关的 PR gh pr status5 分钟内你能跑通「安装 → 登录 → 看到自己的 PR 列表」整条链路。
三个高频场景覆盖日常
盯 PR 状态和检查
每次提交后想知道检查挂没挂、该谁 review 了,翻浏览器太磨叽:
# 只看某个 PR 的检查结果 gh pr checks 1234 # 列出等待你 review 的 PR gh pr list --review-requested @me终端里扫一眼表格,绿勾红叉一目了然,不用离开编辑器。
读写 Issue
有人提了反馈,你想看正文和评论,或者想新建一个 Issue 记录 bug:
# 在终端里读完一个 issue 的正文与评论 gh issue view 456 # 用现成的笔记文件直接建 issue gh issue create --title "登录失败" --body-file notes.md看和建都在同一个窗口里完成,上下文不断线。
创建与合并 PR
提完分支要发 PR,合完要清理分支,这两步以前最占浏览器时间:
# 自动推送当前分支并创建 PR gh pr create # 用 squash 方式合并,顺手删掉分支 gh pr merge 789 --squash --delete-branch从提交到合并,全程没有切窗口。
眼见为实:终端里的真实输出
gh pr list用颜色区分状态,编号是绿色的可复制链接,分支名是青色的,扫一眼就知道谁在什么状态:
gh issue view把状态、作者、标签、正文按层次排好,比网页版更适合逐行阅读:
输出对管道同样友好,gh pr list | cat就是纯文本表格,方便接grep、awk这类老伙计:
前后对比与进阶玩法
| 任务 | 以前 | 现在 |
|---|---|---|
| 确认 PR 检查状态 | 切浏览器、找仓库、点开页面 | gh pr status一行 |
| 读完一条 issue 的评论 | 打开网页往下滚 | gh issue view 456 |
| 合并 PR 并删分支 | 在页面上点三次按钮 | gh pr merge 789 --squash --delete-branch |
进阶两个小动作,能让它更贴你的习惯:
# 给自己起别名,缩短长命令 gh alias set my-prs "pr list --assignee @me --state open" # 输出 JSON 接 jq,脚本化批量处理 gh issue list --json number,title | jq -r '.[].number'别名随时改、随时撤销;--json参数让每条命令都能吐结构化数据,写 CI 脚本时直接管道进jq就能批量关 Issue、批量打标签。
写在最后
GitHub CLI 把协作操作从浏览器搬回了终端,让你写代码的窗口一直开着。如果你天天和 git 打交道、受够了来回切页面,它值得装进工具箱。完整命令清单和各平台安装细节,见官方文档 docs/。
【免费下载链接】cliGitHub’s official command line tool项目地址: https://gitcode.com/GitHub_Trending/cli/cli
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考