見出し画像

GitHubでSSH接続を使用してコードをCloneするための設定手順

Githubでコードをpullする場合、以前はHTTPS接続におけるパスワード認証で行う事ができました。しかし、2021年8月13日以降、GitHubはHTTPS接続におけるパスワード認証を廃止し、SSHまたは個人アクセストークンを使用した認証に移行しました。

また、2022年3月15日以降、GitHubは古いSSHキータイプ(DSAなど)のサポートを終了し、より安全なキータイプ(ECDSAやEd25519など)の使用を推奨しています。

以上理由より、SSH接続によるコードのClone(取得)方法を以下に説明します。

1. SSHキーの生成

まず、SSHキーを生成します。ターミナルを開き、以下のコマンドを実行します。(Emailアドレスはご自分の物に書き換えてください。)

ssh-keygen -t ed25519 -C "your_email@example.com"

これにより、SSHキーのペア(公開鍵と秘密鍵)が生成されます。デフォルトの場所(通常は ~/.ssh/id_ed25519 のフォルダ)に保存されます。

2. 公開鍵のコピー

次に、生成した公開鍵をクリップボードにコピーします。以下のコマンドを使用します。手動のやり方になりますが、で公開鍵の内容を表示し、コピーしてください。
ちなみに、公開鍵は、***.pubという拡張ですのでお間違いないように。

cat ~/.ssh/id_ed25519.pub
> ssh-ed25519 AAAAC3Nz******・・・ your_email@example.com

上記の出力された”ssh-ed25519 AAAAC3Nz******・・・ your_email@example.com”部分をコピーします。

3. GitHubに公開鍵を追加

GitHubにログインし、右上のプロフィールアイコンをクリックして「Settings」を選択します。
左側のメニューから「SSH and GPG keys」を選び、「New SSH key」をクリックします。
タイトルを入力し、先ほどコピーした公開鍵をペーストして「Add SSH key」をクリックします。

4. SSH接続の確認

SSH接続が正しく設定されているか確認します。以下のコマンドを実行します。

ssh -T git@github.com
> Hi username! You've successfully authenticated, but GitHub does not provide shell access.

正常に接続できれば、「Hi username! You've successfully authenticated, but GitHub does not provide shell access.」というメッセージが表示されます。

4. リポジトリのクローン

SSHを使用してリポジトリをクローンするには、リポジトリのページに移動し、「Code」ボタンをクリックしてSSHのURLをコピーします。URLは通常次のようになります。
git@github.com:username/repository.git

SSH接続用のURLの表示場所

次に、ターミナルで以下のコマンドを実行します。

git clone git@github.com:username/repository.git

こうすると、SSH接続によりGihubにあるコードのClone(取得)する事ができます。


いいなと思ったら応援しよう!