以前、GitHubのプライベートリポジトリのクローンがうまくできず、HTTPS接続からSSH接続に変更して事なきを得たことがあったのですが、再び同じ現象が起こりなぜかSSH接続でもクローンができなくなり、困っていたところHTTPS接続可能な解決方法が見つかったので、またまたその流れを備忘録として残しておきたいと思います。
こんな人におすすめ
- HTTPS接続で正確なソースURLを入力しても「有効なソースパス/URLではありません」と表示されクローンできない
- ソースURLにGitHubのユーザーネームとパスワードをセットしても「有効なソースパス/URLではありません」と表示されクローンできない
SourceTreeで起こった現象
いつも通りGitHubにログインして、クローンしたいリポジトリの「Code」からHTTPS用のコードをコピー。「SourceTree」へ移動して新規から「URLからクローン」を行ったところ、「有効なソースパス/URLではありません」とエラーが表示されクローンできない状態に。
SourceTreeで試したこと①(未解決版)
そこで色々調べたところ、「SourceTree」のソースURLに、GitHubのユーザーネームとパスワードを入力するとクローンできるとの情報が。
ソースURLにGitHubのユーザーネームとパスワードを入力する
GitHubからコピーしたURL(以下サンプル)を
https://github.com/********/*********.git
GitHubのユーザーネームとパスワードを追加し変更
(usernameとpassword部分は差し替えてくださ)
https://username:password@github.com/********/*********.git
チャレンジしたところ再度「有効なソースパス/URLではありません」のままクローンできませんでした。現状はこの解決方法は使えないようです。
GitHubの仕様が変わっていたことを発見
2021年8月13日からGitHubの仕様が変わりパスワード認証が廃止されていました。
その為、既にクローン済みのリポジトリのコミットや新しいリポジトリのクローンが以前のパスワード認証のままではエラーになってしまっていたようです。
(私は半年もGitHubを使ってなかったのか…)
SourceTreeで試したこと②(解決版)
パスワード認証が廃止されたことでGitHubの「個人アクセストークン(Personal access tokens)」が新たに必要となるそうで、GitHubで取得する必要があります。
個人アクセストークン(Personal access tokens)取得方法
公式サイトのドキュメントです。
こちらを参考にGitHubの「個人アクセストークン(Personal access tokens)」を取得します。
(*以下トークンとします)
トークンが発行された際には必ずコピーを忘れないでください。後から確認できません。コピーを忘れてしまった場合トークンを削除し新たに作成してください。新たに作成すれば問題なさそうです。(体験談)コピー忘れずに。
ソースURLにGitHubのユーザーネームとトークンを入力する
先ほどと同様「SourceTree」のソースURLに、GitHubのユーザーネームと先ほど作成したトークンを入力します。
GitHubからコピーしたURL(以下サンプル)を
https://github.com/********/*********.git
GitHubのユーザーネームとパスワードを追加し変更
(usernameとtokens部分は差し替えてください)
https://username:tokens@github.com/********/*********.git
上記のソースURLで無事新たなリポジトリをクローンできました。その後、GitHubからコピーしたコードだけでもクローン可能になっていたので、対応を行うのは1度だけでもいいのかもしれません。(詳しくは未確認)
まとめ
何度もつまずくので、本でも買っておさらいしようかなと思ったら今はGitの本もかなりの数が出版されてました。その中でもこちらは「SourceTree」に関してものっている模様。落ち着いたら読んでみようかな。
こちらもCHECK
-
SourceTreeでGitHubにSSH接続する方法(Mac)
続きを見る