导语

作为 GitHub 的重度用户,你是否曾因频繁切换浏览器与终端而感到效率低下?gh 作为 GitHub 官方 CLI 工具,能让你在终端中完成几乎所有 GitHub 操作,从仓库管理到 Issue 追踪,真正实现「一站式开发流程」。本文将带你从零开始掌握这个相见恨晚的神器!

一、gh 是什么?

gh 是 GitHub 的命令行接口(CLI),支持在终端中执行 GitHub 网站的核心功能,包括:

  • 仓库创建、克隆、分支管理
  • Issue/PR 新建、评论与合并
  • Gist 管理、项目协作与 Workflow 触发
  • 甚至直接在终端中查看代码、提交记录

二、安装与初始化

1. 安装(以 Ubuntu 为例)
sudo apt install gh
# 或使用 Homebrew(macOS)
brew install gh
2. 登录认证
gh auth login

执行命令后,终端会生成验证码,浏览器将自动打开授权页面。完成登录后,gh 会存储认证信息,后续操作无需重复登录。

三、核心功能与使用场景

1. 仓库管理
  • 创建新仓库并推送到 GitHub
    # 初始化本地仓库并关联远程
    git init
    gh repo create my-project --public  # --private 设为私有仓库
    git add . && git commit -m "initial commit"
    git push -u origin main
    
  • 快速打开仓库网页
    gh repo view  # 打开当前目录关联的仓库网页
    gh repo view username/repo  # 打开指定仓库网页
    
2. Issue 与 PR 管理
  • 创建 Issue
    gh issue create --title "Fix bug in login page" --body "Description of the issue..."
    
  • 创建并提交 PR
    git checkout -b feature/new-feature
    # 开发完成后
    git push -u origin feature/new-feature
    gh pr create --title "Add new feature" --body "Details..."
    
  • 合并 PR
    gh pr list  # 列出所有 PR
    gh pr merge 123  # 合并编号为 123 的 PR
    
3. Gist 操作
  • 创建匿名 Gist
    echo "print('Hello World')" > hello.py
    gh gist create hello.py
    
  • 创建私有 Gist
    gh gist create --private script.sh
    

四、进阶技巧

  • 自定义命令别名
    .bashrc 中添加:
    alias g=gh  # 用 g 代替 gh 命令
    
  • 集成到 Git 工作流
    # 查看 PR 对应的提交
    gh pr view 123 --commits
    # 在 PR 中添加评论
    gh pr comment 123 --body "Looks good, merge when ready!"
    

五、总结

gh 彻底打破了「终端开发」与「网页操作」的壁垒,尤其适合需要高频协作的团队开发。从创建 Issue 到合并代码,所有操作均可在终端中完成,大幅提升开发效率。下次遇到需要登录 GitHub 网页的场景,不妨先想想:「能不能用 gh 命令搞定?」