WSL2のGitからGitHubへの認証を設定しました。
認証のしくみとしてGit Credential Manager (GCM)を使用します。ローカルで編集したGitリポジトリをGitHubのリモートリポジトリに反映するには、リモートリポジトリに対する認証が必要です。GCMを使うと、Personal Access Tokenを発行する必要がなく、push操作のたびに認証情報を入力する必要がなくなります。
Git for WindowsのGCMを使用
Git for Windowsには、あらかじめGCMが含まれています。WSL2上のGitからGit for WindowsのGCMを呼び出して使用できます。Git for Windowsをデフォルト設定でインストールし、WSL2のターミナルで以下のコマンドを実行します。
git config --global credential.helper "/mnt/c/Program\ Files/Git/mingw64/bin/git-credential-manager.exe"
コマンドを実行すると、.gitconfig
に以下の内容が追記されます。
[credential] helper = /mnt/c/Program\\ Files/Git/mingw64/bin/git-credential-manager.exe
設定後にGitHubのリモートリポジトリへpushを実行すると、自動的にブラウザが起動してGitHubのログインを求められます。ログインが成功するとpushが通ります。以降、都度認証情報を入力しなくてもpushできるようになります。