EclipseのGitでローカルコミットをプッシュしたところ、「Can’t connect to any repository: https://XXXXX.git (https://XXXXX.git: 未認証)」 とエラーメッセージが表示される事象を経験したので、その解決方法を載せておきます。
(この記事を読んでいる人のレベルや状況は各自で違うと思うので、解決への道筋をたどるように書いていますので、各自の状況に読み替えて試してみてください)
目次
EclipseのEGitで「Can’t connect to any repository: https://XXXXX.git (https://XXXXX.git: 未認証)と言われた原因を考えてみると
未認証と言われているので、確認するべきは接続方法と認証方法となります。
また、確認するべき設定箇所は、EclipseとGitHubの2か所ということになります。
(この記事では、GitHubを対象に書いています)
上記の設定を調べればこの事象は解決できます。
EclipseのEGitのユーザー設定を確認する
とりあえず、EclipseのEGitのでGitユーザー設定をされているかを確認しておきます。
Eclipseの「ウィンドウ」→「設定」→「チーム」→「Git」→「構成」を見てみます。
たぶん、色々と「キー・値」が書かれていると思いますが、user設定がされているかを確認してください。
GitHubの接続情報を確認する
GitHubのリポジトリと接続するときの方法(通信プロトコル)を確認してください。
私の場合は、簡単なので「HTTPS」を選択しています。
(後で必要となる情報が、この場所で確認するのが簡単なのでここでしているだけです)
GitHubの認証情報を設定(確認)する
自分が使用したい通信プロトコルに合った認証方法を利用する必要があります。
「HTTPS」の場合、個人アクセストークン認証を利用します。
(2021年8月13日にパスワード認証が廃止されています)
後述しますが、ここがEgitのわかりにくいところですよね……
GitHubの個人アクセストークン認証の発行方法は、公式ドキュメントでけっこうわかりやすく説明されています。
簡単に発行手順を説明すると、
GitHubの右上アカウントをクリックして
「Setting」→「Developer settings」→「Personal access tokens」と進んで「Generate new token」をクリックします。
そして、有効期限や許可する権限を選択します。
すると、下記画像のように、個人アクセストークンが発行されるので、メモしておきます。
画像の赤線を引いた箇所に書いてあるように、ページを変えると再表示はできないので必ずメモをしておきましょう。
EclipseのEGitで認証設定をする
GitHubと接続するための通信プロトコルを確認し、GitHub側で求められる認証情報も設定しましたので、最後にEclipseにその情報を設定します。
「Gitリポジトリー」ビューから、リモートのプッシュ構成で認証設定をします。
画像の「Remotes」→「origin」をクリックすると、
画像赤枠の「プッシュ」を設定するアイコンが出てきますので、
右クリックして「プッシュの構成」をクリックします。
そしたら、「追加もしくは変更」をクリックして、GitHubへと接続するための設定をしていきます。
GitHubの「Clone」からコピーできるURIを貼り付けます。
画像のように通信プロトコルを確認します。
そして、パスワードとなっている箇所に先ほど取得した個人アクセストークンを貼り付けます。
(パスワードとなってはいますが、実際はアクセストークンが必要だというのが私としてはわかりにくいなと思っています。ただし書きくらいしておいて欲しい……)
最後に「完了」→「保存およびプッシュ」をすれば、問題なくプッシュができるようになっていることが確認できるかと思います。