gh CLI(GitHub CLI)安装教程(Github Command Line)

文章目录

  • [gh CLI 在 Linux 下安装指南](#gh CLI 在 Linux 下安装指南)
    • [什么是 gh CLI](#什么是 gh CLI)
    • [为什么使用 gh CLI](#为什么使用 gh CLI)
    • 安装前准备
    • [Ubuntu / Debian 安装](#Ubuntu / Debian 安装)
      • [1. 更新软件包](#1. 更新软件包)
      • [2. 安装依赖](#2. 安装依赖)
      • [3. 添加 GitHub CLI GPG Key](#3. 添加 GitHub CLI GPG Key)
      • [4. 添加软件源](#4. 添加软件源)
      • [5. 安装 gh](#5. 安装 gh)
      • [6. 验证安装](#6. 验证安装)
    • [Fedora 安装](#Fedora 安装)
    • [Arch Linux 安装](#Arch Linux 安装)
    • [openSUSE 安装](#openSUSE 安装)
    • [Snap 安装](#Snap 安装)
    • [使用 Homebrew 安装](#使用 Homebrew 安装)
    • [登录 GitHub](#登录 GitHub)
    • 常用命令
      • 查看认证状态
      • 登出
      • 创建仓库
      • 克隆仓库
      • [创建 Issue](#创建 Issue)
      • [查看 Issue](#查看 Issue)
      • [创建 Pull Request](#创建 Pull Request)
      • [查看 Pull Request](#查看 Pull Request)
      • [查看 Workflow](#查看 Workflow)
      • [查看 Workflow 日志](#查看 Workflow 日志)
    • [在 WSL2 中使用 gh CLI](#在 WSL2 中使用 gh CLI)
    • 常见问题
      • [gh: command not found](#gh: command not found)
      • [如何升级 gh](#如何升级 gh)
    • 客观评价

gh CLI 在 Linux 下安装指南

什么是 gh CLI

gh(GitHub CLI)是 GitHub 官方推出的命令行工具,用于在终端中管理 GitHub 资源,例如:

  • 创建和管理仓库
  • 提交 Pull Request
  • 查看和处理 Issues
  • 管理 Releases
  • 认证 GitHub 账户
  • 与 GitHub Actions 集成

对于习惯使用终端开发的工程师来说,gh 可以显著减少在浏览器和终端之间切换的频率。

GitHub CLI 官方网站


为什么使用 gh CLI

传统工作流:

text 复制代码
修改代码
    ↓
git push
    ↓
打开浏览器
    ↓
创建 Pull Request
    ↓
填写标题和描述

使用 gh CLI:

bash 复制代码
git push

gh pr create

整个流程可以直接在终端完成。

例如:

bash 复制代码
gh repo create
gh issue create
gh pr create
gh release create

安装前准备

首先确认系统版本:

bash 复制代码
cat /etc/os-release

输出示例:

text 复制代码
NAME="Ubuntu"
VERSION="24.04 LTS"

或者:

text 复制代码
NAME="Debian GNU/Linux"
VERSION="12 (bookworm)"

不同发行版安装方式略有差异。


Ubuntu / Debian 安装

GitHub 官方推荐通过 APT 仓库安装。

1. 更新软件包

bash 复制代码
sudo apt update

2. 安装依赖

bash 复制代码
sudo apt install curl -y

3. 添加 GitHub CLI GPG Key

bash 复制代码
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg \
| sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg

设置权限:

bash 复制代码
sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg

4. 添加软件源

bash 复制代码
echo "deb [arch=$(dpkg --print-architecture) \
signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] \
https://cli.github.com/packages stable main" \
| sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null

5. 安装 gh

bash 复制代码
sudo apt update
sudo apt install gh -y

6. 验证安装

bash 复制代码
gh --version

输出类似:

text 复制代码
gh version 2.82.0
https://github.com/cli/cli/releases/latest

Fedora 安装

使用 DNF:

bash 复制代码
sudo dnf install 'dnf-command(config-manager)'

添加仓库:

bash 复制代码
sudo dnf config-manager addrepo --from-repofile=https://cli.github.com/packages/rpm/gh-cli.repo

安装:

bash 复制代码
sudo dnf install gh -y

验证:

bash 复制代码
gh --version

Arch Linux 安装

Arch Linux 官方仓库已提供 gh。

安装:

bash 复制代码
sudo pacman -S github-cli

验证:

bash 复制代码
gh --version

openSUSE 安装

安装:

bash 复制代码
sudo zypper install gh

如果仓库中没有对应版本,可参考官方 RPM 仓库安装方式。


Snap 安装

对于支持 Snap 的发行版:

bash 复制代码
sudo snap install gh

优点:

  • 安装简单
  • 自动更新

缺点:

  • 启动速度略慢
  • 与系统包管理器独立

使用 Homebrew 安装

如果 Linux 环境已经安装 Homebrew:

bash 复制代码
brew install gh

验证:

bash 复制代码
gh --version

登录 GitHub

安装完成后,需要进行认证。

执行:

bash 复制代码
gh auth login

系统会引导选择:

text 复制代码
? What account do you want to log into?
> GitHub.com

选择认证方式:

text 复制代码
> Login with a web browser

随后会生成验证码,例如:

text 复制代码
ABCD-1234

打开浏览器完成授权即可。

https://github.com/login/device

验证登录状态:

bash 复制代码
gh auth status

示例输出:

text 复制代码
Logged in to github.com as your_username

常用命令

查看认证状态

bash 复制代码
gh auth status

登出

bash 复制代码
gh auth logout

创建仓库

bash 复制代码
gh repo create

克隆仓库

bash 复制代码
gh repo clone owner/repository

例如:

bash 复制代码
gh repo clone cli/cli

创建 Issue

bash 复制代码
gh issue create

查看 Issue

bash 复制代码
gh issue list

创建 Pull Request

bash 复制代码
gh pr create

查看 Pull Request

bash 复制代码
gh pr list

查看 Workflow

bash 复制代码
gh run list

查看 Workflow 日志

bash 复制代码
gh run view

在 WSL2 中使用 gh CLI

对于 Windows + WSL2 开发环境,推荐直接在 Ubuntu 发行版中安装 gh。

典型开发环境如下:

text 复制代码
Windows
└── WSL2 Ubuntu
    ├── Git
    ├── GitHub CLI
    ├── Docker CLI
    ├── Python
    ├── Node.js
    └── Claude Code

这样可以获得:

  • 原生 Linux 开发体验
  • 与 Git 集成更自然
  • Claude Code 可直接调用 gh 命令
  • 自动化脚本无需跨系统调用

验证:

bash 复制代码
which gh

输出类似:

text 复制代码
/usr/bin/gh

常见问题

gh: command not found

确认安装成功:

bash 复制代码
which gh

如果没有输出:

bash 复制代码
echo $PATH

检查安装目录是否在 PATH 中。


如何升级 gh

APT 安装:

bash 复制代码
sudo apt update
sudo apt upgrade gh

Homebrew 安装:

bash 复制代码
brew upgrade gh

Snap 安装:

bash 复制代码
sudo snap refresh gh

客观评价

优势

  • GitHub 官方维护
  • 与 GitHub 功能高度集成
  • 支持 PR、Issue、Actions 等常见工作流
  • 自动化脚本友好
  • 学习成本较低

局限性

  • 仅适用于 GitHub 生态
  • 某些高级功能仍需访问 Web 页面
  • 对新手而言,图形界面仍然更直观

适用场景

非常适合:

  • 后端开发
  • DevOps
  • 开源维护者
  • AI Agent 开发
  • Claude Code / Codex 工作流

如果你已经习惯在终端中使用 Git,那么安装 gh CLI 基本属于高收益、低成本的工具升级。尤其是在 WSL2 开发环境中,它已经成为许多开发者的标准工具链之一。

相关推荐
Dontla1 小时前
CI/CD前世今生(持续集成、持续交付、持续部署、Jenkins、Github Actions)
ci/cd·github·jenkins
委婉待续1 小时前
登录github出现ERR_CONNECTION_TIMED_OUT问题
github
洛星核2 小时前
Aider 安装、使用方法详细全解
人工智能·github·人机交互·ai编程·agi
法欧特斯卡雷特2 小时前
从 Kotlin 编译器 API 的变化开始: 2.4.0
android·开源·github
Hical612 小时前
百万 TCP 长连接内存实测:50 万点回归,R²=1.0000,每连接 7.58 KB
后端·github
uhakadotcom2 小时前
get_event_loop(),和 get_running_loop() + ThreadPoolExecutor 有啥区别
后端·面试·github
工一木子2 小时前
GitHub 入门:从代码托管到认识技术世界的一扇门
github
小雨青年3 小时前
GitHub Copilot 上下文工程:让 AI 编程更接近真实项目
人工智能·github·copilot
七夜zippoe3 小时前
OpenClaw 节点命令执行:远程Shell与系统操作实战
github·shell·openclaw·nodes·系统操作