Sourcetreeでは、2021年8月13日にGitHubのパスワードが廃止されたようで、コミットまでは出来るのですが、プッシュやプルが出来ないという事態に陥りました。
私の環境では、こんな感じのエラーが出ました。
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.
いくつか参考にした記事があるのですが、全く同じようにやってもうまくいかず、合わせ技でエラーを解消できたので、その方法をメモします。
参考にした記事
1.【SourceTree】GitHubのパスワード廃止対応(できるだけ簡単に)
2.GitHubのパスワード認証廃止でSourcetreeで403エラーが発生して解決策がわからなかったのでまとめておく
こちらのいずれかの記事のみでも解決できるかもしれません。それでも解決できない方は、このあと記載する上記記事の合わせ技を試してみてください。
やり方
【GitHub上での作業】
まず、エラーにも記載のあるpersonal access token(パーソナルアクセストークン)というものを作る必要があるので、下記URLを参考にトークンを作成します。
個人アクセストークンを使用する ▷
※手順に従ってトークンを作成したら、必ずトークンをメモします。
【SourceTree上での作業】
1.ツール > オプション > 「認証」タブを開きます。
そこに、元々Githubのアカウントが登録されていたので、そのアカウントをクリックし、「削除」で消しました。
2.アカウントの箇所に「追加」があるのでクリックします。
以下の設定にして、「OAuthトークンを再読み込み」をクリックします。
——-
[Host]
ホスティングサービス:GitHub
優先するプロトコル:HTTPS
[Credentioals]
認証:OAuth
——-
3.Githubのログインページが立ち上がるので、自分のGithubのIDとパスワードを入力します。
4.そうすると、先ほどの画面にユーザ名と、「認証成功」の緑のチェックが入りますので、このアカウントを「デフォルトに設定」します。
5.SourceTreeの最初に開いた状態の画面に戻り、「設定」画面を開きます。
6.[編集]を開き、「URL/パス」の書き換えと、「Remote Account」がGeneric Accountになっている場合は、さきほどアカウント追加したアカウントに変更します。
「URL/パス」の変更方法は、下記です。「https://」と「github.com…」の間に、先ほどGithub側の設定で取得し、メモしておいたアクセストークンを貼りつけ、末尾に@をつけます。
元:
https://github.com/[ユーザ名]/[リポジトリ名].git
変更後:
https://[アクセストークン]@github.com/[ユーザ名]/[リポジトリ名].git
ここまでの設定をすべて終えたら、プルやプッシュを再度試します。
私はこの方法で解決することができましたので、他の参考サイトの方法で失敗した方は是非やってみてください!