コンテンツにスキップ
X

GitHub アカウントと SSH 鍵の設定

GitHub(ギットハブ)とは、Git で管理したコードをインターネット上で保存・共有・共同作業するためのプラットフォームです。世界中のエンジニアが使っており、オープンソースプロジェクトの公開やチーム開発の中心的な場となっています。

このページでは、GitHub アカウントの作成から SSH 認証の設定まで、安全にコードを push・pull できる環境を整える手順を解説します。

対象読者: Git のインストールが完了して、GitHub を使い始める方

学習時間の目安: 読了 10分 + 実践 20分

前提知識: Git の基本操作 を読んでいること

github.com にアクセスし、「Sign up」からアカウントを作成します。

  • Username(ユーザー名): 他の開発者に見られます。本名でなくても構いませんが、将来的にポートフォリオとして使う場合を考えると、認識しやすいものにするのが一般的です。
  • Email: 普段使うメールアドレスを登録します。
  • Password: 強力なパスワードを設定します。

💡 2段階認証(2FA)を必ず設定してください。GitHub はセキュリティの観点から強く推奨しています。

GitHub CLIgh)とは、ターミナルから GitHub の操作を行えるコマンドラインツールです。リポジトリの作成や PR の作成が、ブラウザを開かずに行えます。

brew install gh

インストール後、以下のコマンドでブラウザ認証を行います。

gh auth login

対話形式で質問が表示されます。GitHub.comSSH → ブラウザで認証、の順に選択します。

認証が完了したか確認するには以下を実行します。

gh auth status

SSH 鍵(エスエスエイチ かぎ)とは、パスワードの代わりに使う暗号化された認証情報です。公開鍵(GitHubに登録)と秘密鍵(手元のマシンに保存)のペアで動作します。SSH を使うと、パスワード入力なしに安全かつ素早く push・pull できます。

ssh-keygen -t ed25519 -C "your@email.com"

実行するとファイルの保存場所とパスフレーズを聞かれます。

Enter file in which to save the key (/Users/you/.ssh/id_ed25519): [Enterキーで既定値を使用]
Enter passphrase (empty for no passphrase): [パスフレーズを入力]
Enter same passphrase again: [パスフレーズを再入力]

💡 パスフレーズは設定することを推奨します。鍵ファイルが万が一流出した場合の防御になります。

cat ~/.ssh/id_ed25519.pub

ssh-ed25519 AAAA... から始まる1行の文字列が表示されます。これが公開鍵です。

  1. GitHub の右上のプロフィールアイコン → Settings をクリック
  2. 左メニューの SSH and GPG keys を選択
  3. New SSH key をクリック
  4. Title に分かりやすい名前(例: My MacBook 2026)を入力
  5. Key の欄に、先ほど確認した公開鍵(ssh-ed25519 AAAA... 全体)を貼り付ける
  6. Add SSH key をクリック
ssh -T git@github.com

以下のように表示されれば成功です。

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

⚠️ 初回接続時に「The authenticity of host ‘github.com’ can’t be established.」と表示されることがあります。yes と入力して続行してください。

GitHub へのアクセス方法は HTTPS と SSH の2種類あります。

方式認証方法特徴
HTTPSパスワード / トークン設定が簡単。毎回認証が必要なことがある
SSHSSH 鍵ペア初期設定が必要だが、一度設定すればパスワード入力不要

SSH の設定を済ませた場合、リポジトリの URL は git@github.com:username/repo.git の形式を使います。

GitHub CLI を使ってリポジトリを作成し、ローカルと紐づける手順です。

# GitHub にリポジトリを作成(--public で公開、--private で非公開)
gh repo create my-project --public

# ローカルリポジトリにリモートを追加(SSH を使用)
git remote add origin git@github.com:username/my-project.git

# main ブランチを push してトラッキング設定
git push -u origin main

-u オプションは「上流(upstream)を設定する」という意味で、次回以降は git push だけで push できるようになります。

# リモートの設定を確認
git remote -v

# 以下のように表示されれば OK(SSH の場合)
# origin  git@github.com:username/my-project.git (fetch)
# origin  git@github.com:username/my-project.git (push)

Q. HTTPS と SSH のどちらを使うべきですか?

SSH を推奨します。一度設定すれば毎回のパスワード入力が不要になり、作業効率が上がります。

Q. SSH 鍵は複数のマシンに作れますか?

はい。マシンごとに異なる SSH 鍵を生成して GitHub に登録することを推奨します。鍵のタイトルにマシン名を入れておくと管理しやすくなります。

Q. gh auth login で SSH を選ぶと自動で鍵が作られますか?

はい。gh auth login の対話形式で SSH を選ぶと、鍵の生成と GitHub への登録を自動で行ってくれます。手動で設定する場合は上記の手順に従ってください。