别在浏览器和终端之间来回切了:GitHub CLI(gh)把 GitHub 工作流搬进命令行
【免费下载链接】cliGitHub’s official command line tool项目地址: https://gitcode.com/GitHub_Trending/cli/cli
创建 PR、回复 Issue、瞄一眼 CI 结果都要切去浏览器开一堆标签页?GitHub CLI(命令为gh)是 GitHub 官方开源的命令行工具,把 Pull Request、Issue 这些 GitHub 操作直接带到终端里,让你不离开git和代码就能完成整个仓库工作流。
GitHub CLI 是什么:git 旁边的官方队友
gh不是要替代git,而是它的一个扩展——git管本地版本控制,gh管 GitHub 服务端的那些事:拉取请求、问题跟踪、仓库管理、Actions 流水线。它由 GitHub 官方团队开发维护(和早年社区项目hub的定位不同,两者的取舍可以翻 docs/gh-vs-hub.md 了解),用 Go 写成,编译出来就是一个独立二进制文件,macOS、Windows、Linux 都能跑,同时支持 GitHub.com 和 GitHub Enterprise Server 2.20+ 用户。
它的命令结构是按资源组织的,比如gh pr、gh issue、gh repo、gh run,子命令就是对这个资源的常见操作。日常最高频的一条大概是gh pr status,一条命令就能看清三个信息:当前分支有没有关联 PR、有哪些 PR 在等你的 review、CI 检查是绿是红——比打开网页逐个点开快得多。
为什么值得装:5 个不用离开终端的典型场景
- 提交代码后顺手建 PR。
git push之后直接gh pr create,标题和描述会自动生成草稿,你确认后在编辑器里微调即可,全程不用打开浏览器。 - 一眼扫清待办。
gh pr status把"我的分支、我提的 PR、等我 review 的 PR"按状态列出来,检查失败会直接标红,每天开工敲一条就行。 - Issue 跟踪。
gh issue list过滤出指派给你的问题,gh issue view 1234直接看详情和评论,想回复就gh issue comment。 - 盯 CI 不用刷新页面。
gh run list列出工作流运行记录,gh run watch甚至能原地等待运行结束并回显日志,跑挂了一眼就能定位。 - 自动化脚本友好。几乎所有列表命令都支持
--json输出结构化数据,方便接进 CI 脚本、个人自动化工具里二次处理。
能干什么:从日常管理到脚本化、给 Agent 用
除了上面这些,命令树基本覆盖了 GitHub 网页端的主要操作:gh pr(创建/查看/合并/关闭)、gh release(发布与资产上传)、gh repo(创建/克隆/fork/管理部署密钥)、gh search(搜索仓库和 Issue)、gh workflow(触发 Actions 工作流)。两个值得单独提的扩展口:
gh api:任何现有命令覆盖不到的操作,都可以直接用gh api调 GitHub REST/GraphQL 接口,它是官方留好的"逃生通道"。gh extension与gh skill:前者用于安装社区扩展命令;后者是较新的 Agent skill 机制,通过gh skill install安装后,编码 Agent 也能驱动gh干活,技能定义在 skills/gh-skill/SKILL.md 里,对用 AI 辅助开发的人是个加分项。
从源码组织也能看出它的体量:每个子命令一个目录,全部集中在 pkg/cmd/ 下(pr/、issue/、release/、workflow/……),对 GitHub 的 GraphQL 查询封装在 api/,仓库归属判断逻辑在 internal/ghrepo/。命令行为有大量验收测试,testdata 见 acceptance/testdata/。
快速上手:三步装好并跑通第一条命令
- 安装。macOS 用
brew install gh(详见 docs/install_macos.md);Windows 用winget install --id GitHub.cli(详见 docs/install_windows.md);Linux 官方提供 Debian/RPM 包仓库,Ubuntu 等 apt 系一条脚本配好源后apt install gh即可(详见 docs/install_linux.md)。不想用包管理器也可以克隆仓库从源码构建,构建说明在 docs/install_source.md:git clone https://gitcode.com/GitHub_Trending/cli/cli - 登录。运行
gh auth login,按提示选账号,用浏览器授权或粘贴 token 完成认证;多账号、Enterprise Server 的切换方式文档里都有写。 - 跑第一条命令。在任意 git 仓库目录下敲
gh pr status,或者用gh repo view看看当前仓库的概览——到这里就算跑通了。
去哪深入:文档、源码与贡献入口
想系统学命令,docs/ 目录是最好的入口:docs/command-line-syntax.md 解释命令语法约定,docs/codespaces.md 讲在 Codespaces 里怎么用,docs/release-process-deep-dive.md 和 docs/triage.md 则展示了官方团队自己的发布与问题分诊流程,读起来很有参考价值。
下一步建议装好gh后先跑gh auth login和gh pr status,所有命令的完整用法见 docs/;如果对实现细节感兴趣,命令源码都在 pkg/cmd/,欢迎按 AGENTS.md 里的约定参与贡献。
【免费下载链接】cliGitHub’s official command line tool项目地址: https://gitcode.com/GitHub_Trending/cli/cli
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考