HTTPプロキシを使用するネットワークを備えたラップトップ(Ubuntu)を使用しています(http接続のみが許可されています)。
'http://.....' のような URL に svn up を使用すると、すべてがうまくいきます (Google Chrome リポジトリは完璧に動作します) が、今は 'svn://.... でサーバーから svn up する必要があります。 ' 接続が拒否されました。
/etc/subversion/servers でプロキシ構成を設定しましたが、役に立ちません。
誰にも意見/解決策がありますか?
7 に答える
/etc/subversion/servers
設定しているのは、コマンドによって開始されたポート3690で通常実行されている別のサーバーに接続する http-proxy-host
こととは関係ありません。svn://
svnserve
サーバーにアクセスできる場合は、ここで説明されsvn+ssh://
ているようにセットアップできます。
更新connect-tunnel
: HTTPSプロキシサーバーを使用して接続をトンネリングするを使用してみることもできます。
connect-tunnel -P proxy.company.com:8080 -T 10234:svn.example.com:3690
次に、
svn checkout svn://localhost:10234/path/to/trunk
わかりました、これは本当に簡単なはずです:
$ sudo vi /etc/subversion/servers
ファイルを編集します。
[Global]
http-proxy-host=my.proxy.com
http-proxy-port=3128
保存してsvn
再度実行すると、機能します。
SSH を取得できる場合は、SSH ポート転送 SVN サーバーを使用できます。
を使用してSSHs -L
(または-R
、忘れてしまいますが、常に混乱します)、sshトンネルを作成して、
127.0.0.1:3690
実際には ssh トンネル経由で remote:3690 に接続しているため、次の方法で使用できます
svn co svn://127.0.0.1/....
さて、このトピックはやや時代遅れですが、Googleで見つけて解決策を持っているので、これは誰かにとって興味深いかもしれません:
基本的に (もちろん) これはすべての http プロキシで可能というわけではありませんが、ポート 3690 での http 接続を許可するプロキシで機能します。管理者が HTTP 接続用にポート 3690 を開くようにプロキシを構成している場合は、プロキシを介してトンネルを確立するようにローカル マシンをセットアップできます。
会社のネットワーク内で svn.openwrt.org からいくつかのファイルをチェックアウトする必要がありました。トンネルを作成する簡単な解決策は、次の行を /etc/hosts に追加することです
127.0.0.1 svn.openwrt.org
その後、socat を使用して、ローカル ポートへの tcp トンネルを作成できます。
真の間; socat tcp-listen:3690 proxy:proxy.at.your.company:svn.openwrt.org:3690; を実行します。終わり
コマンドは root として実行する必要があります。ローカル ポート 3690 を開き、接続時に同じポートで svn.openwrt.org へのトンネルを作成します。
必要に応じて、ポートとサーバーのアドレスを置き換えるだけです。
標準のSVNインストールを使用している場合、svn://接続はtcpipポート3690で機能するため、ネットワーク構成を変更するか(Httpトラフィックのみが許可されると言った)、またはhttpモジュールをインストールしてSVNサーバーをホストしているサーバー上のApache。
svn:// は http と通信しないため、http プロキシでできることは何もありません。
http が機能しない理由はありますか? httpsを検討しましたか?本当に必要な場合は、おそらくファイアウォールでポート 3690 を開く必要があります。
svn:// URI を使用すると、ポート 3690 が使用され、おそらく http プロキシは使用されません。