目录
简介
gh,是由 GitHub 官方使用 Go 语言开发和维护的命令行工具,旨在脚本或是命令行中便捷管理和操作 GitHub 的工作流程。
-
注意 :
由于 x-cmd 提供了同名模块,因此使用官方 gh 命令,只能以如下方式使用
x env use gh
命令安装 github CLI,而不能直接x gh
:bashx env use gh gh --help
首次用户
-
使用
x env use gh
即可自动下载并使用 -
x-cmd 提供1分钟教程,其中包含了 gh 命令常用功能的 demo 示例,可以帮你快速上手 gh 。
-
使用案例:
bash# 安装 github CLI x env use gh # 克隆 github 中的 x-cmd/x-cmd 仓库 gh repo clone x-cmd/x-cmd # 查看仓库信息 cd x-cmd/ gh repo view # 列出仓库 issue 的摘要信息 gh issue list # 检查 pull 请求的状态 gh pr status
功能特点
- 涵盖 GitHub 的基本操作:提供常见的仓库,成员,ISSUE,PR,工作流以及环境变量等管理功能。
- REST API 与 GraphQL API 支持:GitHub API 相结合,可实现定制化操作,应对复杂的功能需求。
- 美观的 Terminal UI 渲染显示:借助于 Go 生态中的 Terminal UI 可在终端中渲染出直观而简洁的信息。
与 x-cmd gh 模块的关系
x gh 是由 x-cmd 团队基于 GitHub API 使用 Shell 与 AWK 封装 GitHub CLI 模块。
一般来说,同名模块都是对同名包的二次封装,而 gh 模块则是少有的同名包完全没有依赖关系的模块。这就意味着与大多数包不同,用户想使用 gh 包,只能使用 x env use
命令这种安装的方式。而不能使用 x gh
这种模式。
GitHub 官方的 gh 使用 go 实现,运行高效,且拥有插件体系,功能强大。
相较而言,gh 模块:
- 采用 sh/awk/curl 实现,实现更为轻便。这也是我们实现 gh 的初衷
- 因为作为 x-cmd 的模块发布,无需额外安装,开箱即用
- 目前已涵盖官方
gh
命令的管理功能,在参数设计提供更多的选项 - 一致化体验:为了符合 x-cmd cli 的设计哲学,进而保持与其它 cli 的一致性。但也因此导致与官方 gh 命令的设计略有不同。
- 使用 x-cmd 的 tui 体系,提供与其它 x-cmd 模块一致且友好易用的命令行交互界面
相关作品
gh-dash
:一款gh
CLI 增强扩展插件。提供出色的 GitHub PR 与 ISSUE 终端操作仪表台。