5

Windows Server 2003 で実行されている VisualSVN サーバーを使用してソース コードを提供しています。最近、プロジェクトの一部を独自のリポジトリ内の新しいプロジェクトに分割し、svn:externals. それ以来、Subclipse でファイルをコミットしようとすると問題が発生します。

表示されるエラーは次のとおりです。

svn: コミットに失敗しました (詳細は次のとおりです):

svn: '/svn' の PROPFIND: 405 メソッドは許可されていません ( https://svn.ourserver.com )

しばらくグーグルで調べてもあまり役に立ちませんでしたが、私たちの設定は正しいようです。また、このサーバーをしばらくの間これらの問題なく実行しており、プロジェクトを 2 つのリポジトリに分割したことを除けば、サーバーに変更が加えられていないことにも注意してください (つまり、構成ファイルは同じです)。

これらのエラーは、一度に複数のファイルをチェックインしようとした場合にのみ表示されることにも注意してください。一度に 1 つのファイルをチェックインすると、エラーは発生しません。また、現在わかっている限りでは Subclipse にのみ表示され、Versions.app(OS X) は正常に動作しているように見えるため、これが現在の回避策です。

エラーを分析して原因を特定し、その後修正するにはどうすればよいですか?

私は決して SVN の第一人者ではなく、今のところ無知です。


同じパッケージ内の複数のファイルをチェックインできるようですが、複数のパッケージからのファイルはチェックインできません。また、プロジェクトを 2 つのリポジトリに「分割」したときに、元のリポジトリを新しい名前でインポートしました。ダンプを実行せず、そのダンプをインポートしました。それが私たちの問題の原因である可能性がありますか? もしそうなら、どうすればそれを解決できますか?

ぐるぐる回った後、別のリポジトリにファイルをチェックインするときに実際に関連しているように見えます。リポジトリ A とリポジトリ B ( で参照) の両方で同時に 1 つのコミットを実行しようとするとsvn:externals、エラーが発生します。Versions.appこれは正しく処理されますが、1 つのコミットではなく、2 つのコミットを行っているだけかもしれません。Subclipse は惨めに失敗します。今のところ、リポジトリ A 用に 1 つ、リポジトリ B 用に 1 つ、複数のコミットを行うだけで、問題なく動作します。私よりも賢い人が、なぜこれが起こっているのか、この種のセットアップがばかげているのかどうかなどの詳細を記入できる場合は、すぐに進んでください.

4

1 に答える 1

1

前提条件:優れた管理者を雇う

問題:VisualSVNサーバーは、その中のリポジトリのすべての部分にパスベースの認証を使用します。デフォルトのアクセスレベル(AFAICR)-ルート用であり、この設定は下のすべてのノード(リポジトリのルートも)に継承されます。適切なACLがない(または誤って構成* = rされた)新しいリポジトリにコミットしようとすると、問題が発生します。

解決策:VisualSVNサーバーMMCアプレットの新しいリポジトリのプロパティを確認し、権限とユーザーを確認します。最も単純なケースでは、スーパーリポジトリ(外部のリポジトリ)に書き込み権限(コミットできる)を持っているユーザーは、サブリポジトリ(リンクされたリポジトリ)に書き込み権限を持っている必要があります(ポリシーで許可されている場合)資力)。

于 2013-02-08T03:57:22.767 に答える