Httpsプロトコルを介して、Egitでリモートgitリポジトリのクローンを作成しようとしています。 このオンラインチュートリアル に従いました。
URIを挿入すると: https:// username @ Host:port/repositorypath 、パスワード、[次へ]をクリックすると、次のエラーメッセージが表示されます。
Cannot list the available branches.
Reason:
Exception caught during execution of ls-remote command.
このレポのクローンを作成するにはどうすればよいですか?
Egitはssl証明書を探しており、それなしで機能することを拒否しているようです。問題を解消して回避するための適切な修正:ウィンドウ→環境設定→チーム→Git→構成→新規エントリ→http.sslverify
= false。
それはそれの世話をする必要があります。
リポジトリのURLに.gitを追加するとうまくいきました。
これは私のために働いた。
1)Eclipseで、Window -> Preferences -> General -> Network Connections -> SSH2
(または、検索フィルターにSSH2と入力するだけです)。 "Key Management"
タブに移動します。 "Generate RSA Key"
をクリックします。これで、生成されたキー情報を確認できます。この生成されたキーをコピーします。このウィンドウを開いたままにして、手順2を実行します。
2)GitHubアカウントに移動します。profile -> Manage Account -> SSH keys -> Add key
をクリックします。次に、以前にコピーしたキーを貼り付けてから、"Add key"
を貼り付けます。
3)次に、Eclipse Preferencesウィンドウに戻ります。 "Save Private Key"
をクリックして、RSAキーをファイルに保存します。デフォルトでは、これはUsers\user_name\.ssh
ディレクトリに保存されます。ここでは、パスフレーズの提供はオプションです。
以上で、Eclipseを再起動してリポジトリを複製します。
あなたの場合は役に立たないが、他の人には役立つかもしれない:より一般的なものの代わりにスキーム名gitでURIをコピーすると、このエラーが発生するのを見た。 URIがgit://
で始まる場合は、http://
またはhttps://
に変更してみてください。
このエラーが発生していました
Cannot list the available branches.
Reason:
Exception caught during execution of ls-remote command.
sSHキーとbitbucketの間違ったURLを試す場合:
間違っていますか?ssh://[email protected]/user/repository.git
次のURLで機能しました(ブランチがリストされています)。
[email protected]:user/repository。git
また、デフォルトのSSH2ディレクトリが
設定>一般>ネットワーク接続> SSH2>一般> SSH2
ホームはデフォルトC:\ Users\username\.sshの代わりにC:\ Users\username\sshでした(「ssh」の先頭にドットが付きます)
[参照]ボタンを使用すると、適切なディレクトリが選択されていることを確認できます。
これがあなたに関連する場合、指定されたディレクトリを変更するだけで、エラーメッセージを排除できます。
私の場合、それはWindows Vistaの2段階のソリューションでした。
Id_rsa証明書を使用しているため、以前のソリューションで指摘したように、[設定]> [全般]> [ネットワーク接続]> [SSH2]> [全般]> [SSH2]の場所をsshではなく.sshに変更する必要がありました。それに加えて、Everybodyに読み取りアクセス権を付与する必要がありました(Windowsエクスプローラーでファイルを右クリックします)。私のコマンドラインsshクライアントはそうしないと動作を拒否したため、以前はEverybodyへのアクセスを拒否していました。
お役に立てば幸いです。
Debianベースのオペレーティングシステムを使用している場合は、Gitリポジトリのクローンを作成するためにsshサービスを試すことができます。
それは私にはうまく機能しています。
ありがとう、Sengottuvel
eclipseでRSA sshキーを生成する場合:Windows> Preferences> General> Network ..> SSH2> key Managment tab ..
秘密鍵として保存してから続行する必要があります。これで私の問題は解決しました。
私の答えは同じ例外ですが、SSHプロトコルを使用してクローンを作成することです。
1つのワークスペースで動作していましたが、他のワークスペースでは動作していませんでした。コマンドラインからリポジトリをクローンすることもできたので、Eclipseの設定の問題は明らかでした。
2つのワークスペースの構成ファイルを比較しました。それを修正したのは.metadata.plugins\org.Eclipse.core.runtime.settings\org.Eclipse.jsch.core.prefsにありました
SSHディレクトリへのパスがありました:SSH2HOME = C \:\ Users\username\ssh
正しいパスのsshの前にドットがあるはずです:SSH2HOME = C \:\ Users\username\.ssh
それがどのように台無しになったかはわかりませんが、ssh homeへのパスが正しいことを確認してください。
このエラーメッセージは何らかの一般的なものだと思います。私の推測では、プラグインは基礎となるコマンド(おそらくssh、おそらく成功した接続後の最初のコマンドです)で例外をキャッチし、それ自体のメッセージ(「lsコマンドの実行」)を表示します。 。したがって、有効な答えを出すのは困難です。ダニエルの答えを試してみましたが、うまくいきませんでした。
だから私は深く掘り下げて、手動でリポジトリをクローンしようとしました
git clone [email protected]_to_repo
そしてそれは魅力的でした。
そうすることで、認証方法が期待どおりであり、.ssh/config
もきれいかどうかをテストします。
接続できることがわかっているので、エラーはEclipse/EGitのどこかにあるはずだと思いました。たとえば、プロジェクトインポートウィザードの認証方法が邪魔になると思いました。 (パスの前にssh://を置くと、.ssh/config
に干渉する可能性があります-とにかく:いいえ。)
またはEclipseのSSH設定が間違っていた可能性があります:Window --> Preferences --> General --> Network Connection --> SSH
。 OH、私のキーの一部がリストされていません。追加と再起動:同じエラー->フラストレーション。他のすべての設定は正常に見えました。正当な理由が見つかりませんでした。
また、私の接続は最高ではないので、すべての接続の試行には多くの時間がかかります。必死にWindow --> Preferences --> Team --> Git -->
とKABAMMを再確認しました!私は実際に最初はトラブルメーカーであると考えていた設定を見つけました。
Remote connection timeout (seconds): 30
先ほど言ったように、サーバーの応答が届く前に、カタツムリとgitプラグインがあきらめたように感じます。少なくともそれは私の仮定です。なぜなら、値を120
に設定したので、お茶を飲む時間が増えたので、戻ったときにクローンの準備ができているすべてのブランチがあります:)
MylaptopからGithubでsshキーを設定した後でも、Auth Failと予期しない例外の問題が発生したときに、Eclipseで次の手順を実行しました。 Windows >> Preferences ... >> Network .. >> SSH2で正しい.sshパスを指定しました。
この問題を解決して、アクティブプロバイダーをネットワーク接続で直接に変更しました。
プロトコルをgitに変更するだけでegit 1.2で修正できることがわかりました。
Eclipseで新しいSSH2キーを生成したばかりのときに、同じ問題が発生しました[〜#〜] but [〜#〜]プライベートキーフィールドに設定されていません...(Window --> Preferences --> General --> Network Connection --> SSH2 --> (General tab) --> Add private key...
)
Eclipseを再起動すると、この問題は解決しました。
これは私の側の愚かな間違いでした。
Hostフィールドには、最初にwwwを含めたため、完全な[〜#〜] uri [〜#〜]はhttps://www.github.com/user-name/repo-name.git
それがhttps://github.com/user-name/repo-name.git