github 效率工具(开源官方命令行工具登顶)
github 效率工具(开源官方命令行工具登顶)我不得不承认,这个工具已经兑现了承诺。然而,最近 GitHub 一直为发布官方工具和产品做努力,而且他们的进展良好,这还要多亏了微软收购带来的巨额资金和方向调整。Hub 是最受欢迎的非官方 GitHub CLI。据其网站表示:“Hub 是命令行 Git 的扩展,可帮助您完成 GitHub 的日常工作,而无需离开终端。”出品 | CSDN(ID:CSDNnews)多年来,作为全球最受欢迎的代码托管平台 GitHub 竟然一直没有提供官方的 CLI 工具。毕竟 GitHub 是开放源代码项目中最常用的平台,难免让人感到惊讶。但是成为开源生态系统一部分的优势在于,无论有无官方支持,社区都会在需要时构建相应的工具,GitHub 就有相同的经历。
官方版的 GitHub CLI 终于问世了,一经开源便火速冲上了 GitHub Trending 榜 TOP1,接下来,就让我们一起来看,如何在短短 5 分钟便可迅速上手玩转 CLI!
作者 | Nabil Nalakath
译者 | 弯月,责编 | 唐小引
头图 | CSDN
出品 | CSDN(ID:CSDNnews)
多年来,作为全球最受欢迎的代码托管平台 GitHub 竟然一直没有提供官方的 CLI 工具。毕竟 GitHub 是开放源代码项目中最常用的平台,难免让人感到惊讶。
但是成为开源生态系统一部分的优势在于,无论有无官方支持,社区都会在需要时构建相应的工具,GitHub 就有相同的经历。
Hub 是最受欢迎的非官方 GitHub CLI。据其网站表示:“Hub 是命令行 Git 的扩展,可帮助您完成 GitHub 的日常工作,而无需离开终端。”
我不得不承认,这个工具已经兑现了承诺。然而,最近 GitHub 一直为发布官方工具和产品做努力,而且他们的进展良好,这还要多亏了微软收购带来的巨额资金和方向调整。
之前,GitHub 发布了一个带有 GUI 的桌面应用程序,而且正式的命令行工具也提上了日程。如今,官方版的 GitHub CLI 终于问世了。
GitHub CLI
GitHub CLI 是官方版的命令行工具,目前处于 beta 测试阶段。
虽然,这个工具还没有正式发布,但鉴于开发人员和 GitHub 的高度关注,我不得不说 beta 版的发行指日可待。下面就让我们来了解一下这个工具以及如何在日常工作中使用。
安装
Github CLI 的安装非常简单明了。
对于 macOS 上:
brew install github/gh/gh
对于 Windows,有三种安装方式,其中之一如下所示:
scoop bucket add github-gh https://github.com/cli/scoop-gh.git
scoop install gh
你也可以通过 Chocolately 获得,只需运行:
choco install gh
最后,如果你需要 MSI 安装程序文件,则可以前往发行页面(https://github.com/cli/cli/releases/tag/v0.5.7),下载所需的文件。
命令
截止到目前为止,GitHub 已发布了 Beta 版的 CLI,其中包含两个主要命令:issue 和 pull request。因为这两个是开源社区中开发人员最常用的命令。
虽然 hub 支持更多命令,但 hub 只是 Git 的代理,而 gh 是独立的工具。
由于是官方的工具,所以我们希望可以看到更多的命令,但首先让我们了解一下现有的命令。CLI 中所有的命令均以 gh 开头。
Issue
issue 命令用于处理 GitHub 上与 issue 相关的所有事宜。issue 有四个子命令:create、list、status 和 view。具体语法是:gh issue <子命令>。
下面让我们来看看这四个命令:
-
create:从命令行创建 issue 非常简单。你可以直接使用带有 title 和 body 标签的命令:
gh issue create --title "Issue title" --body "Issue body"
也可以通过交互的方式输入详细信息。它还提供了选项可以直接提交 issue,也可以在浏览器中打开链接,供你进行代码审查和提交问题。
-
list:list 命令用于列出代码库中当前的 issue。命令为:gh issue list。它还有过滤器,你可以根据 assignee、label、current state(open、closed)等条件过滤列表。
示例如下:
不带过滤的 issue 列表
closed 的 issue 列表
-
status:这个命令仅显示与当前用户有关的 issue 的状态。命令很简单:gh issue status。
显示相关 issue 的状态
-
view:这个命令是在浏览器中快速打开问题的快捷方式。你只需输入命令,然后输入 issue 的编号,即可在浏览器中打开这个 issue,例如:gh issue view 6。
PR
PR 是 Pull Request 的缩写,它是 CLI 中的第二大主要命令。
你可以利用 PR 直接从命令行处理 GitHub 拉取请求,它也有四个子命令:create、list、status、view,还有一个附加的子命令:checkout。语法为:gh pr <子命令>。
-
checkout:该命令用于从 Git 中检出拉取请求。你可以通过拉取请求编号或 URL 检出。用法为:gh pr checkout { <number> | <url>}。该命令可以立即从拉取请求中检出到新分支。
pr checkout
-
create:顾名思义,用于从 CLI 创建拉取请求。用法为:gh pr create [flags]。该命令有很多标志,例如 title、body、branch 等。你可以在 pr 中添加详细信息并选择要与之合并的分支。它还允许使用以下标志输入信息:
gh pr create --title "Pull request title" --body "Pull request body"
或者,你也可以使用交互式 CLI。它还提供了选项可以直接提交问题,也可以在浏览器中打开其链接,供你进行代码审查和提交。
从命令行创建 pr
-
list:该命令可以列出代码库当前的拉取请求。命令为:gh pr list。它还有过滤器,你可以根据 assignee、label、current state(open、closed)等条件过滤列表。示例如下。
列出代码库中的 pr
-
status:这个命令仅显示与当前用户有关的 issue 的状态。具体命令为:gh pr status。它可以按照各个条件显示这些信息:Current branch、Created by you 以及 Requesting a code review from you。
pr 状态
-
view:这个命令是在浏览器中快速打开 pr 的快捷方式。你只需输入命令,然后输入 pr 编号,即可在浏览器中打开这个 issue,例如:gh pr view 6。此外,你也可以使用--preview 标志在浏览器中快速预览。
总结
以上,我们快速浏览了 GitHub 官方 CLI 的命令,更多信息请参阅官方页面的详细文档。相信正式发布时,还会添加更多命令。
GitHub CLI 官方地址:https://cli.github.com/
英文:The Official GitHub CLI Is Here
链接:https://medium.com/better-programming/the-official-github-cli-is-here-9fb7276e2e15
作者:Nabil Nalakath
译者:弯月