简介

gh,是由 GitHub 官方使用 Go 语言开发和维护的命令行工具,旨在脚本或是命令行中便捷管理和操作 GitHub 的工作流程。

  • 注意:
    由于 x-cmd 提供了同名模块,因此使用官方 gh 命令,只能以如下方式使用 x env use gh 命令安装 github CLI,而不能直接 x gh:

    x env use gh
    gh --help
    

首次用户

  1. 使用 x env use gh 即可自动下载并使用

    • 在终端运行 eval "$(curl https://get.x-cmd.com)" 即可完成 x 命令安装, 详情参考 x-cmd 官网
  2. x-cmd 提供1分钟教程,其中包含了 gh 命令常用功能的 demo 示例,可以帮你快速上手 gh 。

  3. 使用案例:

    gh-1min-cn

    # 安装 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
    

功能特点

  1. 涵盖 GitHub 的基本操作:提供常见的仓库,成员,ISSUE,PR,工作流以及环境变量等管理功能。
  2. REST API 与 GraphQL API 支持:GitHub API 相结合,可实现定制化操作,应对复杂的功能需求。
  3. 美观的 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 模块:

  1. 采用 sh/awk/curl 实现,实现更为轻便。这也是我们实现 gh 的初衷
  2. 因为作为 x-cmd 的模块发布,无需额外安装,开箱即用
  3. 目前已涵盖官方 gh 命令的管理功能,在参数设计提供更多的选项
  4. 一致化体验:为了符合 x-cmd cli 的设计哲学,进而保持与其它 cli 的一致性。但也因此导致与官方 gh 命令的设计略有不同。
  5. 使用 x-cmd 的 tui 体系,提供与其它 x-cmd 模块一致且友好易用的命令行交互界面

相关作品

  • gh-dash:一款 gh CLI 增强扩展插件。提供出色的 GitHub PR 与 ISSUE 终端操作仪表台。

进一步探索

X-CMD 官网

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐