見出し画像

SouceTreeから GitHub(GitLab) へ Push するとき、古いアカウントで Push してしまう場合の対処方法【mac】

GitLabのID名の変更をした際にリモートリポジトリにpullやpushができなくなってしまい、めちゃくちゃにハマったので、対処法をメモしておきます。

pushしようとしたら、アクセスが拒否されてる!↓

remote: HTTP Basic: Access denied
remote: You have 2FA enabled, please use a personal access token for Git over HTTP.
fatal: Authentication failed for 'https://hogehoge.git/'

リモートリポジトリ(origin)は変更したはずなのになぜ…?と思っていたら、それだけでは足りないようでした。

原因

remote: HTTP Basic: Access deniedでググると、どうやらログインしようとしているのユーザー名・パスワードのアンマッチが発生している模様。
キーチェーンから古いアカウント情報を削除すればOKとのことで試してみたのですが、うまくゆかず…

キーチェーンから古いアカウント情報を削除して、再度pushを試みても、再度古いアカウント情報がキーチェーンに追加されてしまうようでした。

↑ここにまた古いアカウント情報が追加されちゃう🥺️

結論

結論としては、SouceTreeの設定ファイルにも古いアカウント情報が残っており、ここも削除する必要があったみたいです。

対処方法

手順1

Finder > 移動 > フォルダへ移動 で下記を入力

~/Library/Application Support/Sourcetree

手順2

以下2つのファイルを削除

  • 古いユーザー名@STAuth-github.com

  • hostusernameap


手順3

再度パスワードの入力が要求されるので、再度GitHub(またはGitLab)のユーザーネームとパスワードを入力する。

手順4

もしキーチェーンに古いアカウント情報が残ってたらここも削除しておいてください。

キーチェーンからのアカウント削除方法はこちらの方の解説が詳しいです↓

mac SourceTree クローン できない キーチェーン アクセス

参照:mac SourceTree クローン できない キーチェーン アクセス


念のため、SouceTreeを再起動して、pushしてみたら、めでたくpushができるようになりました🙌🙌


この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?