3

Я выполнил все действия в https://help.ubuntu.com/8.04/serverguide/C/subversion.html, но когда я попытался сделать это:

svn co https://localhost/svn

Я получил:

 svn: Repository moved permanently to 'https://localhost/svn/'

... и когда я делаю:

 svn co https://localhost/svn/

Я снова получаю ту же ошибку. Когда я пытаюсь:

 svn co https://localhost/svn/testrepo

Я получил:

 svn: Could not open the requested SVN filesystem

В логах apache вижу:

 can't open file /home/myname/testrepo/testrepo/format

В моем apache2.conf у меня есть:

<Location /svn>
     DAV svn
     SVNParentPath /home/myname/testrepo
     SVNListParentPath On
     AuthType Basic
     AuthName "myrepo"
     AuthUserFile /etc/subversion/passwd
     <LimitExcept GET PROPFIND OPTIONS REPORT>
         Require valid-user
     <LimitExcept>
</Location>

Я также пытался ранее с "SVNPath" вместо "parentpath" без успеха.

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

3 ответа3

7

Похоже, что SVNParentPath указывает непосредственно на ваш репозиторий, а не на каталог, содержащий ваш репозиторий.

Создайте папку с названием проектов в вашей домашней папке

mkdir /home/myname/projects

Переместите свой репозиторий в проекты.

mv /home/myname/testrepo /home/myname/projects

Измените владельца проектов на www-data.

sudo chown -R www-data:www-data /home/myname/projects

В apache2.conf измените объявление SVNParentPath на

SVNParentPath /home/myname/projects

Перезагрузите сервер Apache.

Теперь попробуйте проверить свой репозиторий.

svn co https://localhost/svn/testrepo
1

Для пользователей Windows (если у кого-то есть подобная проблема под Windows):

Проблема может быть в правах доступа к файлу.

Я решил свою проблему, переместив хранилище в место, где Apache может читать и записывать файлы. В моем случае (CollabNet Subversion Edge) путь был C:\csvn\data\repositories .

0

Перейдите в каталог SVNParentPath. Здесь мой путь к каталогу /var /www /svn

cd /var /www /svn /

Создайте репозиторий под SVNParentPath

svnadmin создать repo_name

Дайте разрешение Apache

chown -R apache:apache repo_name/

Создать пользователя SVN

htpasswd -m /etc/httpd/conf/.htpasswd username

Назначить разрешение

vi /etc /svnusers [repo_name:/]

имя пользователя = RW

Перезапустите сервис Apache

перезапуск службы httpd

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .