Githubにpushできなくなったときの対処法

ある日突然Githubへpushすると拒否されました。実は去年にGithubよりパスワード認証ではコマンドが使えなくなりますよとアナウンスが出ていました。。その対処法です。

パスワード認証の廃止

最近までGithubを普通に利用していましたが、ある日突然pushコマンドを受け付けなくなりました。

こんなメッセージが表示されます。

remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.

うげげ、となってよく見てみると、アクセスが拒否されているようです。

記述にあるURLへ行くと「パスワード認証は2021年8月13日で廃止」となっているではないですか。。

全然知りませんでした。

Githubアカウントによるパスワード認証がだめになったあとは、「個人アクセストークン」を使って認証するようです。

セキュリティの懸念や問題があったのでしょうね。

個人アクセストークンの使用

コマンドやAPIを使ってGithubを利用するには個人アクセストークンが必要になります。

このトークンをどこで使うかというと、これまでのパスワードの代わりに使います。

つまりパスワード入力がトークンの入力になります。

ですがトークンの文字は長いため入力が困難なのでコピペになるかと思います。

またトークンを作成したときにトークンを記録しておかないと、作成した画面を閉じると2度と見れなくなるので注意してください。

個人アクセストークンの作成方法は、Github公式ページを参照したほうがいいと思うので、以下のリンク先の方法に従ってトークンを作成してください。

https://docs.github.com/ja/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token

トークン作成時の設定項目でコマンドを利用する人は必ず「repo」項目にチェックを入れてください。

そのトークンをこれまでのパスワードと同じように認証時に使います。

コマンド入力時に以下のようにパスワードを聞いてきたら、トークンを入力してください。

トークンは長いのでコピペでいいと思います。

Password for 'https://github.com':

それ以外では、macOSの場合はキーチェーンの情報を編集してパスワードをトークンに書き換えればコマンドは通ると思います。

キーチェーンを起動してパスワードを編集します。

Windowsは資格情報マネージャを起動してパスワードを編集します。

これでこれまで通りGithubが使えるようになります。