LoginSignup
65
59

More than 3 years have passed since last update.

GitHub CLI正式リリース! どんなことができるか紹介します!!

Last updated at Posted at 2020-10-03

はじめに

はじめまして、youtuber系エンジニアのやっすんです!
GitHub CLIが正式リリースされたので、実際に触れ、便利なところをまとめました!

同内容はYoutubeでも説明してるので、ぜひチェックください!

【YouTube動画】GitHub CLI
GitHub CLI

GitHub CLIとは

GitHub CLIはGitHub公式のコマンドラインツールです。
対話的にレポジトリやPR, issueを作成できます!
その際 .gitファイルのあるローカルのディレクトリで、コマンドを実行します。
元はhubから派生したプロジェクトのghがGitHub CLIとなったため、hubを使っている人は移行する意義を感じないかもしれません。
hubを使ってる人向けにも、違いを説明します!

GitHub CLI vs Hub

大きくは以下の表のような違いがあります。
GitHub CLIは、GitHub公式のプロジェクトなので、今後もメンテナンスや機能追加を期待できます。
対して、Hubは開発者のミスラフさんがGitHub CLIに移行したため、今後どうなるか不明です。
ただ、GitHub CLIと比べフォーマットが豊富で、PR一覧時にPRのURLも表示できます! (GitHub CLIではできない...)

GitHub CLIやHubの誕生秘話やミスラフさんの複雑な心境など The past and the future of hub に詳しく書かれているので、興味のある方はぜひ読んでみてください。

GitHub CLI Hub
公式 非公式
対話的にPRやIssueが作れる フォーマットが豊富

[参考]
https://mislav.net/2020/01/github-cli

インストールと主なコマンド

brewをインストールできる環境の場合、以下で一発です。

$ brew install gh
$ gh --version
gh version 1.0.0 (2020-09-16)
https://github.com/cli/cli/releases/tag/v1.0.0

PR/Issueのリスト表示

ghコマンドでは、pr/issue/repoの後にコマンドを入力し、実行します。
-lオプションでラベル名でフィルタリング、-aで割り当てられたユーザー名でフィルタリングできます!

$ gh pr list -l <ラベル名>
$ gh pr issue list -a <ユーザー名>

PRのチェックアウト

リモートにfeature/hogeというPRがあるとします。

ghでは、listコマンドでPRの番号を確認した後に、以下を実行しチェックアウトできます。

$ gh pr checkout <番号>

ちなみに、ghを使わない場合は次のようになります。
ghだと楽ですね。

$ git fetch
$ git checkout -b <適当なブランチ名> remtoes/origin/feature/hoge

リポジトリのクローン

hubの目的の1つにクローンの簡略化があったそうです。
GitHub CLIにも引き継がれています。

# ghを使う場合
$ gh repo clone <owner>/hoge.git

# ghを使わない場合
$ git clone git@github.com:<owner>/hoge.git

PR/Issue/Repoの作成

GitHub CLIはGitHub APIの機能を使えるため、PR作成もできます!
しかも対話的に簡単に作ることができます。

# リポジトリ作成
$ gh repo create

# PR作成
$ gh pr create

# Issue作成
$ gh issue create

他にも便利そうなコマンドがあります。
公式Documentは大変読みやすいので、気になる方は読んでみてください。

まとめ

今回GitHub CLIについて紹介しました。
もう少し説明して欲しいところや、こういう使い方便利だよという意見があれば、コメントください!

twitteryoutubeでのコメントもお待ちしています!

65
59
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
65
59