このコマンドは、SSH(ポート22)を使用git clone git@localhost:someuser/someproject.git
して接続しようとします。localhost
なぜそれが資格情報を要求しているのか(何かがこのポートでリッスンしているように)はわかりません。
私には、その頭の痛い制限を克服する唯一の賢明な方法は、アクセスがブロックされていない(つまり、中国国外の)IPサブネットにSSHジャンプホストを設定することだと思われます。
また、他の(緩和的な)解決策があるかもしれません:
- 独自のコードをホストする必要がある場合は、アクセスできない可能性のある他のGitホスティングプロバイダーがブロックされている可能性があるため、githubを使用しないでください。
- 自分が所有していないプロジェクトにプッシュする必要がある場合は、コードを提供する次善の方法に頼ることができます。パッチシリーズまたは
git bundle
変更セットをメンテナまたはコードの取得を後援する別の人に郵送します。
更新:まあ、私はあなたの答えを読み直しました、そしてあなたは本当にローカルホスト上で実行されているある種のSSHサーバーを持っているようです。したがって、明確にするために、githubでの認証に使用されるSSHキーは、ローカルのSSHサーバーではなく、githubのSSHサーバーと通信するときにクライアントによって使用されます。つまり、プロトコルを使用してgithubからリポジトリのクローンを作成するためgit://
に、トンネルを設定する必要はまったくありませんでした。また、SSH経由でgithubにアクセスするには、常にSSH経由でgithubに接続する必要がありますが、これはブロックされています。githubにSSH接続を受け入れるための別のポート(22ではない)があれば素晴らしいと思います。しかし、私は彼らがこのようなものを利用できるかどうかわかりません。