状況
SourceTreeでコミットをGithubのプライベートリポジトリにプッシュしようとしたところ、以下のエラーが発生して、pushできなかった。
なおfetchやpull, cloneでも同じエラーが発生した。
fatal: repository 'https://github.com/リポジトリ名' not found
原因
最近行ったGitHubの設定変更といえば、二要素認証を追加したことだった。
二要素認証を追加したことで、リポジトリへのアクセスに必要な認証情報も変わったのが原因だった
これまで、httpsプロトコルで接続をしてきた。
この際の認証情報はユーザー名とパスワードだった。
二要素認証を追加したことで必要な認証情報がユーザー名とアクセストークンに変更されたのだ。
そのため、二要素認証を追加以前のSourceTreeの設定では、認証情報が異なりアクセスできなかったのである。
対処
- GitHubでアクセストークンを発行する
- アクセストークンをSourceTreeの認証情報に設定する
これらを正しく行うことで、無事プッシュできた。
久々にGitHubへコミットしたものだから、焦ったが割と昔から二要素認証ではアクセストークン利用が当たり前だった。
面倒がって二要素認証追加していなかった自分だからこそ、起きた自称だね。
参考