SVN "Запрос PROPFIND не выполнен на ..." - PullRequest
21 голосов
/ 26 мая 2009

Я проверял хранилище (скажем, foo) из SVN, когда делал другие коммиты / обновления. Мой сервер умер, и я остался с неполной проверкой. Хорошо. Проблема в том, что я возвращаюсь к хранилищу foo, но не могу. Он просто висит навсегда.

Итак, я пошел на http://subversion.apache.org/faq.html#bdb-recovery и побежал svnadmin recover. Я получил ошибку, поэтому мне пришлось использовать db_recover, и команда сказала, что она успешно выполнена.

Теперь, когда я пытаюсь получить доступ к хранилищу, я получаю:

svn: PROPFIND request failed on '/foo'
svn: PROPFIND of '/foo': 500 Internal Server Error (https://svn.foobar.com)

Кроме того, если я перейду к https://svn.foobar.com/foo, я увижу:

<D:error>
<C:error/>
<m:human-readable errcode="160029">
Could not open the requested SVN filesystem
</m:human-readable>
</D:error>

У кого-нибудь есть мысли?

Примечание: все остальные репозитории работают. Именно этот.

Ответы [ 7 ]

3 голосов
/ 27 мая 2009

Вы запускали 'svnadmin recovery' как пользователь, обычно использующий репозиторий (например, учетную запись apache)?

Если нет, то причина может заключаться в том, что некоторые файлы теперь принадлежат пользователю, выполняющему 'svnadmin recovery', оставляя учетную запись apache без прав на изменение файлов репозитория.

1 голос
/ 17 ноября 2014

Иногда при установке разных версий Java плагин Eclipse SVN (в моем случае Subversive 1.7) может не работать.

Я использовал JVM 1.6, но мой путь к среде указывал на более новую версию (из-за установки Oracle Java Web Start или чего-то еще).

Итак, я переместился на старую версию Java 1.6, и она заработала.

1 голос
/ 18 октября 2013

Если вы настраиваете сервер SVN по HTTP (S), это может быть сервер Apache, который говорит, что он не понимает PROPFIND.

В моем случае это произошло, когда я установил «Расположение» в конфигурации Apache HTTPD без указания, что это реализация SVN WebDAV (мод SVN является расширением в WebDAV):

  <Location /svn>
       SVNParentPath /data/scm/repositories/
       SVNPathAuthz off
       AuthType Basic
       AuthName "xxxxx"
       AuthBasicProvider ldap
       AuthLDAPURL ldap://xxx.yy:389/DC=aaaa,DC=bbbb?sAMAccountName?sub
       Require valid-user
   </Location>

Вместо этого:

 <Location /svn>
   DAV svn
   SVNParentPath /data/scm/repositories/
   SVNPathAuthz off
   AuthType Basic
   AuthName "xxxxx"
   AuthBasicProvider ldap
   AuthLDAPURL ldap://xxx.yy:389/DC=aaaa,DC=bbbb?sAMAccountName?sub
   Require valid-user
 </Location>

Кажется логичной ошибкой после того, как я ее нашел, но мне потребовалось довольно много времени, чтобы найти ошибку ...

1 голос
/ 29 декабря 2010

Я получил эту ошибку propfind, потому что отключилось питание, и я забыл перезапустить экземпляры svnserve и Apache =)

0 голосов
/ 30 июня 2015

В моем случае я мог бы решить проблему, изменив значение "commit to" со значения "https://localserver/svn/project" на" file: /// F: / Repositories / project ".

Он начал давать сбой после изменения порта HTTPS, потому что я установил сертификат в свой IIS локального хоста, и он конфликтовал с сервером Apache SVN.

0 голосов
/ 19 апреля 2012

Если конкретное сообщение об ошибке «конец файла», журнал httpd error_log показал, что:

[error] PHP Parse error:  syntax error, unexpected T_STRING in /var/www/repos/...

но нет синтаксической ошибки.

Кажется, что файлы .php интерпретируются вместо того, чтобы рассматриваться как текст - очевидно, связанные с конфигурацией типов MIME ...

Ну, ответ прост:

AddType text/plain .php

Просто добавьте это в ваш файл конфигурации виртуального хоста, и apache2 перестанет интерпретировать PHP в этом хранилище. Источник

0 голосов
/ 25 февраля 2012

В моем случае мне нужен был другой протокол:

svn co svn+ssh://svn.xyz.com/directory
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...