Github に SSH で接続するには公開鍵の設定が必要です。
しかし、Windows での設定については情報が少なかったり、少し古かったりして何度も躓いたので、ここにまとめておきます。
以下の設定はすべてGit Bashを使います。コマンドプロンプトやPowerShellでは動きませんので、注意してください。
公開鍵の準備
Git bash で以下のように入力して鍵ペアを作成します(<mail address> は自分のアドレス)。
ssh-keygen -t ed25519 -C <mail address>
すると、保存する場所やパスフレーズを聞かます。特にこだわりがなければそのままで(パスフレーズは空欄で)進めることができます。
その後、C\Users\<user_name>\.ssh にid_ed25519とid_ed25519.pub の2つのファイルが作成されます。
なお、. で始まるフォルダはデフォルトでは非表示になっているので、隠しファイルの表示と拡張子の表示にはチェックを入れておきましょう。
続いてGithub側の設定です。
Githubの設定
Githubを開いたら、右上のアイコンから、Settings > SSH & GPG Keys に進みます。
そのままSSH keysの右上にある New SSH keyをクリックします。
Titleに分かりやすい名前を入れたら、keyのテキストエリアにid_ed25519.pubの内容をコピーできます(.pubファイルはメモ帳などテキストエディタで開けます)。
その後、下にあるAdd SSH Key をクリックします。
これでGithub側の設定は完了です。
コンフィグファイルの作成
最後に、Windowsに戻り、もう一度.sshのフォルダを開き、テキストファイルを新規作成します。
そのファイルを次のとおり編集したら、ファイル名を「config」に変更します(拡張子の.txtも残さない)。拡張子を変更すると使えなくなるといった警告が表示されますが、無視して続行しましょう。
これですべての設定が完了です。
最後に、Git bashからSSH接続を試してみましょう。
ssh -T git@github.com
接続を続行するか聞かれるので、yesと入力しましょう。これで認証が完了し、コマンドプロンプトやPowerShellでGithubとSSH接続できるようになりました。