2026/4/24 ・ github
ghコマンドの覚書
別に使わなくてもいい
githubの画面から操作すればいいからね。ただCLIで動くAI使うときに便利なので。
何ができるかくらいは知っといて損ないと思います。
gh コマンド覚書
GitHub CLI。PR・Issue・Actions などをターミナルから操作できる。
auth — 認証・アカウント管理
# ログイン(ブラウザ経由)
gh auth login
# 現在の認証状態を確認(全アカウント表示)
gh auth status
# ログアウト
gh auth logout
auth — 複数アカウントの切り替え(gh 2.40.0+)
# 2つ目のアカウントを追加ログイン(既存アカウントはそのまま残る)
gh auth login
# ログイン中のアカウント一覧を確認
gh auth status
# アカウントを切り替え(対話的に選択)
gh auth switch
# ユーザー名を指定して切り替え
gh auth switch -u mysubaccount
# ホスト(GitHub Enterprise など)を指定して切り替え
gh auth switch -h github.mycompany.com
コマンド単発で別アカウントを使いたい場合 環境変数
GH_TOKENにトークンをセットするとそのコマンドだけ別アカウントで実行できる。GH_TOKEN=ghp_xxxxxxxxxxxx gh pr listGitHub Enterprise と github.com を併用する場合
gh auth login --hostname github.mycompany.com gh auth switch -h github.mycompany.com
repo — リポジトリ管理
# リポジトリを作成(対話的)
gh repo create
# リポジトリを作成(名前・公開範囲を指定)
gh repo create my-project --public
gh repo create my-project --private
# リポジトリをクローン
gh repo clone user/my-project
# 自分のリポジトリ一覧
gh repo list
# 他のユーザーのリポジトリ一覧
gh repo list other-user
# リポジトリをフォーク
gh repo fork user/my-project
# フォークしてそのままクローン
gh repo fork user/my-project --clone
# リポジトリ情報をブラウザで開く
gh repo view --web
# リポジトリ情報をターミナルで表示
gh repo view user/my-project
pr — Pull Request 管理
# PR を作成(対話的)
gh pr create
# タイトル・本文を指定して作成
gh pr create --title "feat: ログイン機能を追加" --body "ログイン画面を実装しました"
# ドラフト PR を作成
gh pr create --draft --title "WIP: ログイン機能"
# ベースブランチを指定して作成
gh pr create --base develop --title "feat: ログイン機能"
# PR 一覧
gh pr list
# 自分がレビュアーになっている PR 一覧
gh pr list --reviewer @me
# PR の詳細を表示
gh pr view 123
# PR をブラウザで開く
gh pr view 123 --web
# PR のブランチをローカルにチェックアウト
gh pr checkout 123
# PR の差分を確認
gh pr diff 123
# PR をマージ(マージコミット)
gh pr merge 123
# PR をマージ(スカッシュ)
gh pr merge 123 --squash
# PR をマージ(リベース)
gh pr merge 123 --rebase
# PR を承認
gh pr review 123 --approve
# PR にコメントを追加
gh pr review 123 --comment --body "LGTM!"
# PR に変更リクエスト
gh pr review 123 --request-changes --body "ここを修正してください"
# PR をクローズ
gh pr close 123
# 自分に関係する PR の状態を確認
gh pr status
issue — Issue 管理
# Issue を作成(対話的)
gh issue create
# タイトル・本文を指定して作成
gh issue create --title "バグ: ログインできない" --body "再現手順: ..."
# ラベルを付けて作成
gh issue create --title "バグ: ログインできない" --label bug --label urgent
# Issue 一覧
gh issue list
# 自分にアサインされた Issue 一覧
gh issue list --assignee @me
# ラベルで絞り込み
gh issue list --label bug
# Issue の詳細を表示
gh issue view 456
# Issue をブラウザで開く
gh issue view 456 --web
# Issue にコメント
gh issue comment 456 --body "確認しました"
# Issue をクローズ
gh issue close 456
# Issue を再オープン
gh issue reopen 456
# 自分に関係する Issue の状態を確認
gh issue status
workflow / run — GitHub Actions 管理
# ワークフロー一覧
gh workflow list
# ワークフローを手動実行
gh workflow run ci.yml
# ブランチを指定して手動実行
gh workflow run ci.yml --ref feature/login
# 実行履歴一覧
gh run list
# 特定ワークフローの実行履歴
gh run list --workflow ci.yml
# 実行の詳細を表示
gh run view 789
# 実行をリアルタイムで監視
gh run watch 789
# 失敗した実行のログを確認
gh run view 789 --log-failed
# 実行をキャンセル
gh run cancel 789
# 実行を再実行
gh run rerun 789
# 失敗したジョブだけ再実行
gh run rerun 789 --failed
release — リリース管理
# リリース一覧
gh release list
# リリースを作成(対話的)
gh release create v1.0.0
# タイトル・ノートを指定して作成
gh release create v1.0.0 --title "v1.0.0" --notes "初回リリース"
# ドラフトリリースを作成
gh release create v1.0.0 --draft --title "v1.0.0"
# ファイルをアセットとして添付して作成
gh release create v1.0.0 dist/app.zip --title "v1.0.0"
# リリースの詳細を表示
gh release view v1.0.0
# 既存リリースにアセットを追加
gh release upload v1.0.0 dist/app.zip
# リリースを削除
gh release delete v1.0.0
gist — Gist 管理
# ファイルから Gist を作成(公開)
gh gist create src/index.ts
# 説明を付けて作成
gh gist create src/index.ts --desc "便利なユーティリティ"
# シークレット Gist を作成
gh gist create src/index.ts --secret
# Gist 一覧
gh gist list
# Gist の内容を表示
gh gist view <gist-id>
# Gist をブラウザで開く
gh gist view <gist-id> --web
search — 検索
# リポジトリを検索
gh search repos "react hooks"
# Issue を検索
gh search issues "ログインできない" --repo user/my-project
# PR を検索
gh search prs "feat: ログイン" --repo user/my-project
# コードを検索
gh search code "useState" --language typescript
よく使うフロー
PR を出してマージするまで
git switch -c feature/login
# ... 実装 ...
git add .
git commit -m "feat: ログイン機能を追加"
git push -u origin feature/login
gh pr create --title "feat: ログイン機能を追加" --body "ログイン画面を実装しました"
gh pr view --web # ブラウザで確認
gh pr merge 123 --squash # スカッシュしてマージ
レビュー依頼された PR を確認してマージ
gh pr list --reviewer @me # 自分がレビュアーの PR を確認
gh pr checkout 123 # ローカルで動作確認
gh pr review 123 --approve # 承認
gh pr merge 123 --squash
Actions が失敗したときに確認
gh run list --workflow ci.yml # 実行履歴を確認
gh run view 789 --log-failed # 失敗ログを確認
gh run rerun 789 --failed # 失敗ジョブだけ再実行
作業中に別アカウントに切り替えたい
gh auth status # 現在のアカウントを確認
gh auth switch -u mysubaccount # 別アカウントに切り替え
# ... 作業 ...
gh auth switch -u mymainaccount # 元のアカウントに戻す
あとがき
PRのレビュアーになった時とか割と便利かも。
まぁでもAIに使ってもらうシーンのほうが多い気がする。
CLIは便利だけど覚えられん。

