CLI 与 GitHub CLI 完整教程

CLI 与 GitHub CLI 完整教程

文章目录

  • [CLI 与 GitHub CLI 完整教程](#CLI 与 GitHub CLI 完整教程)
    • [CLI 是什么意思?](#CLI 是什么意思?)
      • [CLI 的核心特点](#CLI 的核心特点)
      • [常见的 CLI 工具](#常见的 CLI 工具)
    • [以 GitHub CLI 为例详细说明](#以 GitHub CLI 为例详细说明)
      • [GitHub CLI 能做什么?](#GitHub CLI 能做什么?)
      • [安装 GitHub CLI](#安装 GitHub CLI)
      • 常用命令示例
        • [1. 仓库操作](#1. 仓库操作)
        • [2. Issue 管理](#2. Issue 管理)
        • [3. Pull Request 管理](#3. Pull Request 管理)
        • [4. 查看 CI/CD 状态](#4. 查看 CI/CD 状态)
        • [5. 快速浏览 GitHub 通知](#5. 快速浏览 GitHub 通知)
      • [GitHub CLI 的优势](#GitHub CLI 的优势)
      • 使用场景举例
    • 总结

CLI 是什么意思?

CLICommand-Line Interface 的缩写,中文通常翻译为命令行界面。这是一种基于文本的交互方式,用户通过在终端(Terminal)或控制台(Console)中输入命令来与计算机操作系统或软件进行交互。

与之相对的是 GUI(图形用户界面,Graphical User Interface),即我们平时通过鼠标点击图标、菜单和窗口来完成操作的方式。CLI 则完全依靠键盘输入指令,虽然看起来不如 GUI 直观,但在很多场景下它更高效、更灵活,尤其适合开发人员、系统管理员和需要批量处理任务的用户。

CLI 的核心特点

  • 基于文本:所有操作都通过输入文本命令完成,输出也以文本形式显示。
  • 高效便捷:熟练的用户可以快速执行复杂操作,无需在菜单中层层寻找。
  • 可脚本化:可以将一系列命令写入脚本文件(如 Shell 脚本)中,实现自动化任务。
  • 资源占用少:相比于图形界面,CLI 程序通常更轻量,适合在服务器或资源受限的环境中使用。
  • 远程访问友好:通过 SSH 等协议可以轻松在远程服务器上使用 CLI 进行管理。

常见的 CLI 工具

  • 操作系统自带的 Shell:如 Linux 的 Bash、Zsh,Windows 的 CMD、PowerShell。
  • 版本控制工具:如 Git CLI。
  • 容器工具:如 Docker CLI。
  • 云服务工具:如 AWS CLI、Azure CLI、GitHub CLI
  • 包管理工具:如 npm、pip、apt。

以 GitHub CLI 为例详细说明

GitHub CLI (官方命令行工具,命令为 gh)是由 GitHub 官方开发的 CLI 工具,它允许用户直接在终端中完成对 GitHub 的大多数操作,而无需打开浏览器访问 GitHub 网站。它整合了 GitHub 的各项功能,包括仓库管理、Issue、Pull Request、Release、Gist 等,极大地提升了开发者的工作效率。

GitHub CLI 能做什么?

通过 gh 命令,你可以:

  • 创建、克隆、Fork 仓库
  • 查看、创建、评论、关闭 Issue 和 Pull Request
  • 检查 CI/CD 状态(GitHub Actions)
  • 创建和管理 Release
  • 查看和创建 Gist
  • 在终端中浏览 GitHub 通知
  • 验证身份并管理多个 GitHub 账户

安装 GitHub CLI

GitHub CLI 支持主流操作系统,安装方式通常很简单:

  • macOSbrew install gh
  • Windows:通过 WinGet、Scoop 或直接下载安装包
  • Linux:根据发行版使用 apt、yum 或从 GitHub Releases 下载

安装后,首次使用需要认证:

复制代码
gh auth login

按照提示选择登录方式(浏览器或令牌),完成后即可开始使用。

常用命令示例

1. 仓库操作
  • 克隆一个仓库:

    复制代码
    gh repo clone owner/repo-name
  • 在当前目录下创建一个新仓库并推送到 GitHub:

    复制代码
    gh repo create my-new-repo --public --source=. --remote=origin --push
  • 查看仓库信息:

    复制代码
    gh repo view owner/repo-name
2. Issue 管理
  • 列出当前仓库的 Issue:

    复制代码
    gh issue list
  • 创建一个新的 Issue:

    复制代码
    gh issue create --title "Bug found" --body "Detailed description"
  • 查看某个 Issue 的详情:

    复制代码
    gh issue view 123
3. Pull Request 管理
  • 创建 Pull Request:

    复制代码
    gh pr create --title "Fix bug" --body "Closes #123" --base main
  • 列出当前打开的 Pull Request:

    复制代码
    gh pr list
  • 在本地检出某个 Pull Request 的代码:

    复制代码
    gh pr checkout 456
  • 合并一个 Pull Request:

    复制代码
    gh pr merge 456
4. 查看 CI/CD 状态
  • 查看当前分支的 Actions 运行状态:

    复制代码
    gh run list
  • 查看某个工作流的详细日志:

    复制代码
    gh run view 789
5. 快速浏览 GitHub 通知
复制代码
gh notification list

GitHub CLI 的优势

  • 减少上下文切换:无需频繁在终端和浏览器之间切换,所有操作都可以在命令行中完成。
  • 脚本化和自动化 :可以将 gh 命令集成到脚本中,实现自动化工作流(例如自动创建 Issue、合并 PR 等)。
  • 与 Git 无缝配合gh 很多命令会自动识别当前 Git 仓库的远程地址,无需手动输入仓库名。
  • 支持自定义配置:可以设置别名、默认编辑器等,符合个人习惯。
  • 官方支持且开源:由 GitHub 官方维护,持续更新,安全可靠。

使用场景举例

假设你正在开发一个开源项目,收到了一个贡献者的 Pull Request。你可以直接在终端中:

复制代码
# 查看 PR 列表
gh pr list

# 检出 PR 到本地进行测试
gh pr checkout 42

# 测试完毕后,合并 PR
gh pr merge 42

整个过程无需打开浏览器,大大提高了效率。

总结

CLI 是一种强大而高效的交互方式,通过命令行直接控制计算机或软件。GitHub CLI 是这一理念的完美体现,它将 GitHub 的丰富功能带到终端中,让开发者能够在不离开命令行环境的情况下完成日常的 GitHub 操作。如果你经常使用 GitHub 并习惯终端工作流,GitHub CLI 绝对值得一试。

相关推荐
qq_381013743 小时前
IntelliJ IDEA中GitHub Copilot完整使用教程:从安装到实战技巧
其他·github·intellij-idea·copilot
happyprince7 小时前
2026年04月07日热门github项目
github
奔跑草-7 小时前
【AI日报】每日AI最新消息2026-04-07
人工智能·大模型·github·开源软件
CoovallyAIHub8 小时前
Sensors 2026 | 从无人机拍摄到跑道缺陷地图,机场巡检全流程自动化——Zadar机场全跑道验证
数据库·架构·github
CoovallyAIHub8 小时前
15K Star中文首发!$5部署一个会自我进化的私人Agent——NousResearch开源Hermes Agent
git·架构·github
无限进步_9 小时前
【C++】巧用静态变量与构造函数:一种非常规的求和实现
开发语言·c++·git·算法·leetcode·github·visual studio
淼淼爱喝水9 小时前
Ansible 基础模块实战作业详细教程
chrome·github·ansible
高志小鹏鹏10 小时前
告别“修复 bug”:让别人一眼看懂你的 Commit
git·github·代码规范
李同学Lino11 小时前
别让你的 AI 太安逸!我给代码 Agent 装上了“大厂 PUA”插件,产出直接翻倍(附保姆级教程)
github
用户73654368074311 小时前
用 n8n + GitHub API 搭建 AI 开源项目自动监控系统(Docker 部署 + 评分模型 + Lark推送)
github