svnリポジトリにhttpプロトコルで接続できない場合の回避方法
googlecode.comからslim3をチェックアウトしようとしてハマった現象。
いろいろぐぐってみたところ、どうやら下記のようなことだと推定できたので、回避策を載せておきます。
■現象
Eclipse プラグインのsubversiveにて、httpプロトコルでsubversionリポジトリを追加しようとすると、下記のメッセージが表示され取得に失敗してしまう。
>Validate Location
>Location information has been specified incorrectly.
>svn: PROPFIND of '/svn': 501 Method Not Implementd
>(http://○○○.googlecode.com)
>Keep location anyway?
※上記現象はhttpプロトコルのみで起こり、httpsプロトコルでのsvn接続時には発生しない。
※tortoiseSVNでも発生しない。
■環境
Eclipse 3.5.1
SVNKit 1.3.0 Implementation(Optional) 2.2.1
Subversive SVN Team Provider 0.7.8
■原因
設定していたプロキシが、PROPFINDメソッドをhttpプロトコルで許可していないため。
(tortoiseSVNで現象が起こらなかったのは、プロキシを経由せずリポジトリへ接続していたということかな。)
プロキシ設定を解除し、Eclipse再起動のうえ、リポジトリ追加の操作を行う。
(権限がなくて解除できない環境の場合は、httpsで接続するしか方法は無さそう。)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
tortoiseSVNで発生しなかったので、subversive固有の問題かと思って関連ドキュメントをあさりましたが、プロキシが原因でした。
どおりでぐぐってもそれらしい情報がなかったわけだ
httpsだとメソッドも暗号化されるのでプロキシに弾かれないということらしいです。なるほど。
参考にさせていただいたページ
subversionを認証必須のプロキシ経由で使いたい - spikelet days
http://d.hatena.ne.jp/taiyo/20080401/p4