0

LinuxディストリビューションをopenSUSE12.2に更新してから、Subversionリポジトリが機能しなくなりました。それらをチェックアウトしたり、ブラウザを閲覧したりすることはまったく問題ありませんが、コミットは機能しません。変更をコミットしようとすると、クライアントから次のように表示されます。

svn: E175011: Commit failed (details follow):
svn: E175011: Repository moved permanently to 'https://example.org/repo/main/!svn/me'; please relocate
svn: E175011: Your commit message was left in a temporary file:

Webサーバーでは、次のようなものが表示されます。

1.2.3.4 - - [25/Oct/2012:12:11:22 +0200] "OPTIONS /repo/main/trunk/eManager HTTP/1.1" 401 401 "-" "SVN/1.7.7 neon/0.29.6"
1.2.3.4 - my_user [25/Oct/2012:12:11:22 +0200] "OPTIONS /repo/main/trunk/eManager HTTP/1.1" 200 195 "-" "SVN/1.7.7 neon/0.29.6"
1.2.3.4 - - [25/Oct/2012:12:11:22 +0200] "POST /repo/main/!svn/me HTTP/1.1" 301 - "-" "SVN/1.7.7 neon/0.29.6"

注:最初の要求は基本認証専用です。私の設定(SSL対応のVHostで、以前のディストリビューションバージョンから変更されていません)は次のとおりです。

# main svn repo
<Location /repo/main>
    DAV svn
    SVNPath /srv/svn/main

    # Require SSL connection for password protection.
    SSLRequireSSL

    AuthType Basic
    AuthName "Enter password"
    AuthUserFile /srv/config/.htpasswd-main
    Require valid-user

    #test
    ErrorDocument 404 default
</Location>

私はこれについてすでに何十ものスレッドを読んでいますが、実用的な解決策はありません。
でsubversion構造をアップグレードし、svnadmin(grepによって)他のAlias /Locationが/repoに設定されていないことを確認しました(これは最も頻繁な提案でした)。

4

2 に答える 2

0

回避策:少なくとも回避策を説明している役立つスレッドをようやく見つけました。これを設定に追加すると、コミットが再び機能します。

SVNAdvertiseV2Protocol off

これは完璧ではありませんが、より良い答えをいただければ幸いです。

于 2012-10-25T11:13:35.473 に答える
0

いつ、なぜこのように場所を書き始めたのか思い出せませんが、少なくとも 301 エラーの問題はありません。

  • 場所の定義では、末尾の / を使用します
  • SVN(Parent)?末尾に / を付けたパスも定義
于 2012-10-25T11:00:24.853 に答える