GitHub CLI(ghコマンド)は、GitHubの操作をコマンドラインで完結できる公式ツールです。ブラウザを開かずに、リポジトリ作成からIssue管理、Pull Request作成まで、すべてターミナルで行えます。この記事では、実際の導入から活用法、トラブルシューティングまで詳しく解説します。
GitHub CLIとは?
GitHub CLIは、Gitコマンドとは別の、GitHub専用のコマンドラインツールです。
Gitとの違い
| 機能 | Git | GitHub CLI |
|---|---|---|
| ローカルリポジトリ管理 | ⭕ | ❌ |
| リモートとの同期 | ⭕ | ❌ |
| GitHub上のリポジトリ作成 | ❌ | ⭕ |
| Issue管理 | ❌ | ⭕ |
| Pull Request管理 | ❌ | ⭕ |
| Actions確認 | ❌ | ⭕ |
つまり、Gitはローカル作業、GitHub CLIはGitHub上の作業を担当します。
インストール手順
Windows
方法1: wingetコマンド(推奨)
winget install GitHub.cli実行すると以下のような出力が表示されます:
見つかりました GitHub CLI [GitHub.cli] バージョン 2.85.0
ダウンロード中...
インストールが完了しました方法2: 公式インストーラー
- https://cli.github.com/ にアクセス
- 「Download for Windows」をクリック
.msiファイルをダウンロードして実行
インストール後の確認
重要: インストール後はコマンドプロンプトを再起動してください。
再起動後、以下のコマンドで確認:
gh --version以下のように表示されればOKです:
gh version 2.85.0 (2024-XX-XX)macOS
brew install ghLinux
Ubuntuの場合:
sudo apt install ghその他のディストリビューションは公式ドキュメントを参照してください。
認証設定
GitHub CLIを使うには、GitHubアカウントとの認証が必要です。
基本的な認証フロー
gh auth login対話形式で以下を選択していきます:
1. アカウント選択
? What account do you want to log into?
> GitHub.com
GitHub Enterprise ServerGitHub.com を選択します。
2. プロトコル選択
? What is your preferred protocol for Git operations?
> HTTPS
SSHHTTPS を選択します(一般的な使い方)。
3. 認証方法選択
? How would you like to authenticate GitHub CLI?
> Login with a web browser
Paste an authentication tokenLogin with a web browser を選択します(推奨)。
4. ブラウザで認証
! First copy your one-time code: XXXX-XXXX
Press Enter to open github.com in your browser...- 表示されたワンタイムコードをコピー
- Enterキーを押す
- ブラウザが開くので、GitHubにログイン
- コードを入力
- 「Authorize github」をクリック
重要ポイント:
- ワンタイムコードには有効期限がある(通常15分)
- 素早く入力すること
- 手入力ではなくコピー&ペーストを推奨
認証完了の確認
gh auth status以下のように表示されれば成功:
github.com
✓ Logged in to github.com as YOUR_USERNAME
✓ Git operations for github.com configured to use https protocol.
✓ Token: ghp_************************************トラブルシューティング
エラー1: 'gh' は認識されていません
原因: インストール後にコマンドプロンプトを再起動していない
解決方法:
- コマンドプロンプトを閉じる
- 新しいコマンドプロンプトを開く
- 再度
gh --versionを実行
それでも解決しない場合は、環境変数のPATHに以下を追加:
C:\Program Files\GitHub CLIエラー2: Uh oh, we couldn't find anything
原因: ワンタイムコードの入力ミスまたは有効期限切れ
解決方法:
gh auth loginを再実行- 新しいワンタイムコードが表示される
- すぐにコピーしてブラウザに入力
- 手入力ではなくコピー&ペーストを使用
エラー3: Personal Access Tokenを使いたい場合
ブラウザ認証がうまくいかない場合:
gh auth login認証方法選択で Paste an authentication token を選択
トークン作成手順:
- https://github.com/settings/tokens にアクセス
- 「Generate new token」→「Generate new token (classic)」
- Note:
github-cli-access - Expiration: 任意(推奨: 90 days)
- Select scopes: repo にチェック
- 「Generate token」をクリック
- トークンをコピー(画面を離れると二度と見れない)
- コマンドプロンプトに貼り付け
基本的な使い方
リポジトリ操作
リポジトリ作成
gh repo create my-project --public
# プライベートリポジトリ
gh repo create my-project --private
# 説明付きで作成
gh repo create my-project \
--public \
--description "プロジェクトの説明"
# 現在のフォルダをソースにして作成&プッシュ
gh repo create my-project \
--public \
--source=. \
--pushリポジトリ作成の詳細な手順は「GitHubリポジトリ作成の2つの方法:GUI vs CLI徹底比較」をご覧ください。
リポジトリ設定変更
# 説明文変更
gh repo edit --description "新しい説明文"
# プライベートに変更
gh repo edit --visibility private --accept-visibility-change-consequences
# 公開に変更
gh repo edit --visibility public --accept-visibility-change-consequences
# ホームページURL設定
gh repo edit --homepage "https://example.com"
# Wiki有効化
gh repo edit --enable-wiki
# Issue無効化
gh repo edit --disable-issuesリポジトリ情報表示
# 情報表示
gh repo view
# ブラウザで開く
gh repo view --webIssue操作
Issue作成
# 対話形式で作成
gh issue create
# タイトルと本文を指定
gh issue create \
--title "バグ報告" \
--body "詳細な説明"
# ラベル付きで作成
gh issue create \
--title "機能追加" \
--body "詳細" \
--label "enhancement"Issue一覧表示
# オープンなIssue一覧
gh issue list
# すべてのIssue
gh issue list --state all
# 自分がアサインされているIssue
gh issue list --assignee @meIssue表示
# Issue #123を表示
gh issue view 123
# ブラウザで開く
gh issue view 123 --webPull Request操作
PR作成
# 対話形式で作成
gh pr create
# タイトルと本文を指定
gh pr create \
--title "機能追加: ユーザー認証" \
--body "詳細な説明"
# ブラウザで開いて作成
gh pr create --webPR一覧表示
# オープンなPR一覧
gh pr list
# 自分のPR
gh pr list --author @mePR表示とマージ
# PR #456を表示
gh pr view 456
# PR #456をマージ
gh pr merge 456その他便利なコマンド
現在のリポジトリを確認
gh repo viewブラウザで開く
# リポジトリをブラウザで開く
gh browse
# 特定のIssueを開く
gh issue view 123 --web
# 特定のPRを開く
gh pr view 456 --webGitHub Actionsの確認
# Workflow実行履歴
gh run list
# 最新のWorkflow詳細
gh run view
# 特定のWorkflowを表示
gh run view 12345実践的な活用例
例1: 新規プロジェクトの開始
# プロジェクトフォルダ作成
mkdir my-new-project
cd my-new-project
# README作成
echo "# My New Project" > README.md
# Git初期化
git init
git add .
git commit -m "Initial commit"
# GitHubにリポジトリ作成&プッシュ
gh repo create my-new-project --public --source=. --push例2: Issueを作成してブラウザで確認
# Issue作成
gh issue create --title "バグ修正: ログイン失敗" --body "詳細な説明"
# Issue一覧を確認
gh issue list
# 最新のIssueをブラウザで開く
gh issue view 1 --web例3: 既存リポジトリのクローンとPR作成
# リポジトリをクローン
gh repo clone username/repository
# ブランチ作成
git checkout -b feature-branch
# 変更をコミット
git add .
git commit -m "Add new feature"
# プッシュ
git push origin feature-branch
# PRを作成
gh pr create --title "新機能追加" --body "詳細"GUIとの比較
作業速度の比較
GUI(ブラウザ)での新規リポジトリ作成:
- ブラウザを開く(5秒)
- GitHubにアクセス(5秒)
- New repositoryをクリック(3秒)
- フォームに入力(30秒)
- Create repositoryをクリック(3秒)
- ターミナルに戻る(3秒)
- コマンドをコピペ(20秒)
- プッシュ(10秒)
合計: 約79秒
CLI(gh コマンド)での新規リポジトリ作成:
- コマンド1行で完了(5秒)
合計: 約5秒
具体的なコマンド例
実際に私が Claudeチャットエクスポートツール を管理するために使ったコマンド:
# リポジトリ作成(GUIなら1分以上かかる作業が5秒で完了)
gh repo create my-python --public --source=. --push
# 公開範囲変更(GUIなら設定画面を開いて変更が必要)
gh repo edit --visibility private --accept-visibility-change-consequences
# 情報確認(ブラウザを開く必要なし)
gh repo viewGitHub CLIを使うメリット
1. 作業効率の大幅向上
- ブラウザとターミナルを行き来する必要がない
- マウス操作が不要
- ショートカットキーで高速操作
2. 認証が楽
- 一度認証すれば以降はパスワード不要
- Personal Access Tokenの管理が不要
- セキュアな認証情報保存
3. スクリプト化・自動化が可能
# 複数リポジトリを一気に作成
for repo in project1 project2 project3; do
gh repo create $repo --public
done4. 一貫した操作感
- すべての操作がコマンドラインで統一
- Gitコマンドとシームレスに連携
- VSCodeなどのターミナルからも実行可能
5. リモート作業に最適
- SSHでリモートサーバーに接続している場合でも使える
- ブラウザが不要なため軽量
- スクリプトに組み込んで自動化可能
デメリットと対策
デメリット1: 学習コスト
対策: よく使うコマンドから徐々に覚える
# まずはこの3つから
gh repo create --public --source=. --push
gh repo view
gh issue create デメリット2: GUIほど直感的ではない
対策: --helpオプションを活用
gh repo --help
gh issue --help
gh pr --helpデメリット3: 初期セットアップが必要
対策: 一度セットアップすれば永続的に使える
学習ロードマップ
レベル1: 基本操作(1週間)
gh auth login
gh repo create
gh repo viewレベル2: Issue/PR管理(2週間)
gh issue create
gh issue list
gh pr create
gh pr mergeレベル3: 高度な操作(1ヶ月)
gh run list
gh release create
gh gist createまとめ
GitHub CLIは、GitHubの操作を大幅に効率化できる強力なツールです。
こんな人におすすめ:
- 開発作業の効率を上げたい
- コマンドライン操作に慣れている
- 複数のリポジトリを管理している
- リモート環境で作業することが多い
初めての人へ:
まずは gh repo create と gh repo view から始めてみてください。慣れてくると、他のGitHub操作もCLIで行いたくなるはずです。
GitHubの操作をコマンドラインで完結させることで、開発フローが劇的に改善します。ぜひ試してみてください!
関連記事
- GitHubリポジトリ作成の2つの方法:GUI vs CLI徹底比較

- Claudeチャットを資産化!エクスポートデータを整形するPythonツール

コメント