6

会社の Subversion サーバーは 1.6.11 ですが、最近 Subversion クライアントを 1.8.0 にアップグレードしました。

基本的なコマンドは正常に機能します (update、commit など)。問題は、再配置などのより複雑なコマンドを実行しようとしたとき、または maven release-plugin からリリースを生成しようとしたときです。その場合、次のエラーが発生します。

[ERROR] svn: E175002: Unable to connect to a repository at URL 'https://mycompaniesserver.com/svn/repo/trunk/project'
[ERROR] svn: E175002: OPTIONS request on '/svn/repo/trunk/project' failed: 503 Service Unavailable

1.6 から最新の 1.7 までのさまざまなクライアントを使用している私の仲間の同僚は、これを理解していないようです。

私の推測では、Subversion 1.8 は、古いバージョンのクライアントが送信しなかったいくつかの HTTP OPTIONS コマンドを送信し、Subversion サーバーのファイアウォールまたはプロキシ (Subversion 自体ではない) がそれらを拒否していると思われます。

古い Subversion クライアントに戻す以外に、これらの新しい形式のメッセージが送信されないようにする方法はありますか (既にすべてのプロジェクトを 1.8 形式に変換しているため)。または、1.8 クライアントが機能するように、Subversion サーバーのファイアウォールに追加する必要がある明確なルールはありますか?

編集: 1.7.x クライアントに戻り、すべて正常に動作しましたが、サーバーのシステム管理者を関与させずに 1.8 クライアントを使用できる方法を見つけたいと思っています。

4

7 に答える 7

2

Subversion 1.8 リリース ノートの「neon に基づく HTTP クライアント サポートが削除されました」の章を読んで、Skelta|Bulk モードのサーバー側およびクライアント側の構成オプションに注意し、テーブルからクライアント サーバー モードをテストすることができると思います (議論ネットワーク管理者と一緒に) - 1.8 で一括から skelta に移行できます。

別のバージョン - 中間ブロックのプロキシ | ファイアウォール

URL のリポジトリに接続できません

svn-client の新しく変更されたアクティビティ

Kerberos または NTLM 認証が使用されている場合 ... HTTP 要求および応答ごとに 2 ~ 4 KB のヘッダーを追加する

于 2013-07-11T10:20:40.170 に答える
2

httpsプロキシ経由でSubversionサーバー1.5.1に接続しているときに、tortoisesvn 1.8.0を介してSubversionクライアント1.8.0で同じ問題が発生しました。古いSubversionクライアントバージョンを使用して解決しました。

于 2013-07-08T15:51:30.650 に答える
1

別のデータ ポイントとして、http を介して 1.8 クライアントから 1.6 サーバーと通信する際に問題が発生しました。http 1.1に準拠していると主張する方法で、いくつかの危険なプロキシがありました. ただし、Subversion は実際には http プロトコルをプッシュします。

1.7 クライアントには、WebDAV と Serf の 2 つの http ライブラリがあります。WebDAV は 1.8 で削除され、Serf http ライブラリだけが残りました。

svn 1.8 クライアントの構成ファイルでチャンク転送を明示的に無効にする必要がありました。その後、すべてが機能しました(新しいファイルを含むチェックインを除いて、ため息をつきます!)。

1.8 の既知の問題の最初のエントリを参照し、ファイルを読み進めてhttp-chunked-requests = noください~/.subversion/servers

于 2015-07-22T16:06:23.423 に答える
1

IIRC これは 1.8.0 のバグです。1.8.x 以降のリリースのいずれかをインストールします。

于 2013-10-15T12:39:43.020 に答える