gh コマンド入門:GitHub CLI で PR・Issue・リポジトリをターミナルから操作する

スポンサーリンク

gh はGitHubが公式に提供するCLIツールです。PRの作成・レビュー・マージ、Issueの管理、リポジトリの操作などをブラウザを開かずにターミナルから行えます。

インストール・認証

インストール

brew install gh

認証

gh auth login

ブラウザが開くのでGitHubアカウントでログインします。SSHキーの登録も案内してくれます。

認証状態の確認

gh auth status

リポジトリ操作

クローン

gh repo clone owner/repo-name

git clone と同じですが、SSH/HTTPSを自動で選択してくれます。

リポジトリ情報を見る

gh repo view

# ブラウザで開く
gh repo view --web

リポジトリを作成する

# カレントディレクトリをGitHubリポジトリとして作成
gh repo create myapp --public

# プライベートで作成
gh repo create myapp --private

PR(プルリクエスト)操作

PRを作成する

gh pr create

インタラクティブにタイトル・本文・ベースブランチを入力できます。

gh pr create   --title "feat: ユーザー認証を追加"   --body "ログイン・ログアウト機能を実装しました。"   --base main   --reviewer teammate1,teammate2   --label "feature"

PR一覧を見る

gh pr list

絞り込みもできます。

# 自分がレビュアーのPR
gh pr list --reviewer @me

# ラベルで絞り込み
gh pr list --label "feature"

PRの詳細を見る

# カレントブランチのPR
gh pr view

# PR番号を指定
gh pr view 12

# ブラウザで開く
gh pr view 12 --web

PRをチェックアウトする

gh pr checkout 12

ブランチをローカルに取得してチェックアウトします。レビュー時に便利です。

PRをマージする

# スカッシュマージ(マージ後にブランチを削除)
gh pr merge 12 --squash --delete-branch

# リベースマージ
gh pr merge 12 --rebase

# マージコミット
gh pr merge 12

PRをレビューする

# Approve
gh pr review 12 --approve

# 変更リクエスト
gh pr review 12 --request-changes --body "ここを修正してください"

# コメントのみ
gh pr review 12 --comment --body "LGTMです"

PRのCIステータスを確認する

gh pr checks 12
All checks were successful
✓  test (ubuntu-latest)  2m30s
✓  lint                  45s
✓  build                 1m15s

PRをクローズする

gh pr close 12

Issue操作

Issueを作成する

gh issue create
gh issue create   --title "ログインページでエラーが発生する"   --body "再現手順:..."   --label "bug"   --assignee @me

Issue一覧を見る

gh issue list

# 自分にアサインされたIssue
gh issue list --assignee @me

# ラベルで絞り込み
gh issue list --label "bug"

Issueにコメントする

gh issue comment 8 --body "確認しました。修正中です。"

Issueをクローズ・再オープン

gh issue close 8
gh issue reopen 8

GitHub Actionsの操作

実行履歴を見る

gh run list

# 特定のワークフローに絞る
gh run list --workflow ci.yml

実行をリアルタイムで監視する

gh run watch

失敗した実行のログを見る

gh run view 1234567890 --log-failed

ワークフローを手動実行する

gh workflow run ci.yml

# ブランチを指定
gh workflow run ci.yml --ref feature-branch

よく使う流れ

PRを作成してマージするまで

# ブランチを切って作業・コミット
git checkout -b feature/add-login

# PRを作成
gh pr create --title "feat: ログイン機能を追加" --body "..." --base main

# CIを確認
gh pr checks

# レビュー後にマージ
gh pr merge --squash --delete-branch

まとめ

コマンド 説明
gh pr create PRを作成する
gh pr list PR一覧を表示
gh pr view PRの詳細を表示
gh pr checkout 12 PRのブランチをチェックアウト
gh pr merge 12 --squash PRをスカッシュマージ
gh pr review 12 --approve PRをApprove
gh pr checks 12 CIステータスを確認
gh issue create Issueを作成
gh issue list Issue一覧を表示
gh issue close 8 Issueをクローズ
gh run list Actionsの実行履歴を表示
gh run watch Actionsの実行をリアルタイムで監視

GitHub Secretsの管理は gh secret コマンドで行えます。詳しくは「GitHub ActionsのシークレットをCLIで登録する:gh secret コマンド入門」を参照してください。