ポート9418(git)をブロックしているファイアウォールの背後にいて、git://github.com/...
のチェックアウトを明示的に行うツールをインストールしようとしているため、チェックアウトのためにhttpsに切り替えることができません。
だから私はそれがプロキシを介してポート9418にすべてのトラフィックをリダイレクトすることが可能かどうか、もしそうならどのように:)
見て core.gitproxy
Git config の設定。
クイックグーグルにより、このスクリプトは有用である可能性がある(またはそうでない可能性がある-私は試していない)ことが明らかになりました。 https://Gist.github.com/49288
Gitサブモジュールについて話している場合は、これを試してください:
git config --global url.https://github.com/.insteadOf git://github.com/
... ここ から取得。
このように、プロキシを設定したり、スクリプトを実行したりする必要はありません。
SOCKSプロキシを介してgitをリモートサーバーに接続するプロキシコマンドを指すcore.gitProxy
を作成する必要があります。次のコンテンツを含むスクリプトを作成して、プロキシコマンドとして使用できます。
nc -x <your_proxy_Host>:<your_proxy_port> $1 $2
リモートホストとポートを表す2つのパラメーターは、gitによってプロキシコマンドに渡されます。このスクリプトにgit-proxy
という名前を付け、$PATH
からアクセスできるようにすると、git config
を呼び出して設定できます。
git config --global --add core.gitProxy git-proxy
SshベースのTCPトンネル?
ssh -L localhost:9418:<remote>:9418 me@remote-ssh-server
または、ファイアウォールを回避するためにポート443でsshdを実行する必要がある場合、
ssh -P 443 -L localhost:9418:<remote-Host>:9418 me@remote-ssh-server
次に、ローカルで:
git checkout git://localhost/...
明らかに、これは透過的ではなく、少し複雑です。問題をより具体的に対象とするツールは間違いありません。ただし、私が手にする必要のあるツール(sshと私がレンタルするcheapo仮想サーバー)を使用するため、通常はこの方法を使用します。
(実際にこれをgit接続で試したことはありませんが、なぜ動作しないのかわかりません。他の多くのシングルTCPポートプロトコルで問題なく使用しました。)