はじめに
2021年8月13日から、GitHub.comでのGit操作の認証時にアカウントのパスワードを受け付けなくなるような仕様に変更されました。
https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/
これにより、今後はパスワード認証ではなく、トークンベース認証を使用しなければ、GitHubを操作することができなくなります。私はWindowsマシンでSourcetreeを使って、パスワード認証でGitHubを操作していたので、この仕様変更で使えなくなりました。今回は、この状態からGitHubを操作できる状態までの手順を記事にしようと思います。
この記事では、WindowsでSourcetreeを使ったGitHubの認証方法でパスワード認証からトークンベース認証への移行方法を記載します。トークンベース認証に関しては、個人用アクセストークン、OAuthトークン、GitHub Appインストールトークンなどありますが、ここでは個人用アクセストークンを用いた認証方法を使います。
よろしくお願いします。
手順
手順1:個人用アクセストークンの発行
まずは、個人用アクセストークンの発行をします。(以下、公式の手順)
これは、GitHub上で作業します。手順は以下の通りです。
- 自分のアカウントでログイン。
- Settingsページへ移動。
- Developer settings > Personal access tokens > Generate new tokenの順番で移動し、発行準備。
- Note、Expiration、Select scopesを設定して、トークンを発行する。
- 発行されたトークンは一度しか表示されないので、必ずローカルなどへ保存し、控えておいてください。
以上で、個人用アクセストークンの発行は終了です。
[追記 2024/09/14] Personal access tokens(Fine-grained tokens)
- すべてのリポジトリにアクセスするなら All repositories を選択します。
- Permissions は基本的な操作のみなら Contents を Read and write に変更します。
- Genarate し、個人用アクセストークンを控えておく。
手順2:Sourcetreeのpasswdファイルの削除
次に、ローカルにある、Sourcetreeのpasswordファイルを削除します。
これをすることで、今まで適用されていたパスワードを削除することができます。
以下の場所に置いてあるので、このpasswdファイルを削除します。
C:\Users\{USERNAME}\AppData\Local\Atlassian\SourceTree\passwd
削除したら、Sourcetreeを再起動します。
以上で、Sourcetreeのpasswdファイルの削除の終了です。
手順3:Sourcetreeで個人用アクセストークンを使って、再認証する
最後に、Sourcetreeで個人用アクセストークンを使って、再認証します。
これは、Sourcetree上で作業します。手順は以下の通りです。
- Sourcetreeを起動したら、ツール > オプション > 認証 > アカウント > 編集 を選択します。
- 認証がBasicに選択されている状態で、パスワードを再読み込みします。
- パスワードに、先ほど発行した個人用アクセストークンを入力します。
※ Sourcetree操作時に、再度パスワードを求められたら、個人用アクセストークンを入力してください。
以上で、Sourcetreeで個人用アクセストークンを使って、再認証は終了です。
[追記 2024/09/14] Personal access tokens(Fine-grained tokens)
- Sourcetreeを起動したら、ツール > オプション > 認証 > アカウント > 編集 を選択します。
- 認証が Personal Access Token に選択されている状態で、Personal Access Token を再読み込みします。
- パスワードに、先ほど発行した個人用アクセストークンを入力します。
おわりに
これで無事に、WindowsでSourcetreeからGitHubを操作することができるようになったと思います。
ここまで読んでいただき、ありがとうございました。