💳
gitでSSH認証済みなのに急にusernameとpasswordを聞かれるようになった話
GitHubでリポジトリを作成し、ローカルの既存ファイルをアップしようとしたらusernameとpasswordを聞かれ、入力すると下記のメッセージが。当然アップもできない。
terminal
git push -u origin main
Username for 'https://github.com':
Password for 'https://git remote rm origin@github.com':
remote: Support for password authentication was removed on August 13, 2021.
remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for information on currently recommended modes of authentication.
原因
セットアップのコードコピペ時にhttps接続にしていたから
なんだそんなことかよ!と思いSSHに切り替えてコピペするも、解消されない。
解決方法
コマンドを変えても解消されないのは通信がHTTPSのままだから。
SSHの設定に戻す作業が必要。
Terminal
# 現在の通信を確認
git remote -v
# https通信になっていることが確認できる
origin https://github.com/△△××/◯◯△△.git (fetch)
origin https://github.com/△△××/◯◯△△.git (push)
# 通信をSSHに変更
git remote set-url origin git@github.com:
# 再度確認し、SSH通信になっていればOK
git remote -v
origin git@github.com: (fetch)
origin git@github.com: (push)
このあと再pushを試みるもremote origin already exists
ってエラーも出てしまったので下記の作業も追加。
Terminal
# 既存originを削除
git remote rm origin
# originを再登録
git remote add origin git@github.com:USERNAME/REPO_NAME.git
結論
地味にめんどくさいので、コピペするときはちゃんと確認しましょう。
参考記事
大変助かりました🙏ありがとうございました
Discussion