用途
GitHub CLI(gh)是 GitHub 官方命令行工具,用于在终端中管理 GitHub 上的拉取请求、议题、仓库、工作流与发布等操作。本技能提供 gh 操作的专家级指导与常用工作流示例。
主要能力
安装与认证
- 登录:
gh auth login - 查看认证状态:
gh auth status - 配置 git 使用 gh 作为凭据助手:
gh auth setup-git
拉取请求(PR)
- 创建:
gh pr create,支持--title、--body、--base、--head、--draft、--fill - 查看:
gh pr list、gh pr view 123、gh pr view 123 --web、gh pr diff 123、gh pr status - 管理:
gh pr checkout 123、gh pr review 123 --approve、gh pr review 123 --comment --body、gh pr review 123 --request-changes --body、gh pr merge 123(支持--squash、--rebase、--merge)、gh pr close 123、gh pr reopen 123、gh pr ready 123 - 检查:
gh pr checks 123、gh pr checks 123 --watch
议题(Issues)
- 创建:
gh issue create,支持--title、--body、--label、--assignee - 查看:
gh issue list、gh issue list --assignee @me、gh issue list --label bug、gh issue view 456、gh issue view 456 --web - 管理:
gh issue close 456、gh issue reopen 456、gh issue edit 456 --title、gh issue edit 456 --add-label、gh issue edit 456 --add-assignee、gh issue comment 456 --body
仓库操作
- 查看:
gh repo view、gh repo view --web - 克隆:
gh repo clone owner/repo - 复刻:
gh repo fork owner/repo - 列表:
gh repo list owner - 创建:
gh repo create my-repo --public或--private - 删除:
gh repo delete owner/repo - 同步复刻:
gh repo sync owner/repo - 设置默认仓库:
gh repo set-default
工作流与 Actions
- 列出工作流:
gh workflow list - 查看运行:
gh run list、gh run view 789、gh run watch 789、gh run view 789 --log - 触发工作流:
gh workflow run workflow.yml - 取消运行:
gh run cancel 789 - 重新运行:
gh run rerun 789 - 下载产物:
gh run download 789
发布(Releases)
- 创建:
gh release create v1.0.0,支持--notes、指定文件、--draft、--generate-notes - 管理:
gh release list、gh release view v1.0.0、gh release download v1.0.0、gh release delete v1.0.0
Gist
- 创建:
gh gist create file.txt、echo "content" | gh gist create - - 列表:
gh gist list - 查看:
gh gist view <gist-id> - 编辑:
gh gist edit <gist-id> - 删除:
gh gist delete <gist-id>
高级功能
- 别名:
gh alias set pv "pr view"、gh alias list、gh pv 123 - API:
gh api repos/:owner/:repo/issues,支持-f传 JSON 数据与--paginate分页 - 扩展:
gh extension list、gh extension install owner/gh-extension、gh extension upgrade --all
配置
- 设置编辑器:
gh config set editor vim - 设置 git 协议:
gh config set git_protocol ssh - 查看配置:
gh config list - 设置浏览器:
gh config set browser firefox
使用方式
资料提供了常见工作流示例:
- 代码审查工作流:列出指派给自己的 PR、检出 PR 测试、批准并合并
- 快速创建 PR:创建分支、提交、推送后使用
gh pr create --fill - 议题分类:列出议题、添加标签、指派负责人
使用提示:
- 使用
--web在浏览器中打开查看详情 - 省略参数时多数命令支持交互式提示
- 使用
--author、--label、--state过滤列表 - 添加
--json获得可脚本化输出 - 使用
gh repo create --template创建模板仓库 - 使用
gh pr merge --auto启用自动合并
pki-manager-web 项目的版本管理规范
资料包含针对该项目的特定发布规范:
- 创建新发布时,必须同步更新三个 package.json 文件的版本号:根目录 package.json(权威来源)、frontend/package.json、backend/package.json
- 语义化版本升级类型:patch(缺陷修复、小改动,如 1.2.0 → 1.2.1)、minor(新功能、向后兼容,如 1.2.0 → 1.3.0)、major(破坏性变更,如 1.2.0 → 2.0.0)
- 发布前必须:检查根 package.json 当前版本、确定升级类型、更新全部三个 package.json、以
chore: bump version to vX.Y.Z提交、创建并推送标签、使用gh release create vX.Y.Z --generate-notes创建发布 - 发布检查清单:测试通过(pnpm test)、构建成功(pnpm build)、三个 package.json 版本一致、变更已提交到 main 分支、无未提交变更(git status)、存在上一发布标签用于对比
适用场景
适用于需要在终端中完成 GitHub 日常操作(PR、议题、仓库、Actions、发布)的开发者,以及需要遵循 pki-manager-web 项目版本同步规范的发布流程。
限制
资料未提供 gh 的安装命令、系统要求、版本兼容性、收费或价格信息,这些内容暂未提供。