Настройка Subversion Server в Mac OS mountain lion (есть доступ через браузер, но невозможно получить извлечение из Subversion)
Некоторые детали (возможно, это будет полезно для некоторых парней):
На борту: mac mini + горный лев + Server.app.
Проблема: у меня есть доступ к моему хранилищу Subversion через браузер, но у меня нет доступа к нему через командную строку для проверки (например).
Я сделал:
Получил mod_dav_svn.so и mod_authz_svn.so из Mac OS Lion и поместил его в
/usr/libexec/apache2
Затем создайте com.site.svn.plist в / Library / Server / Web / Config / apache2 / webapps:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>name</key> <string>com.site.svn</string> <key>includeFiles</key> <array> <string>/private/etc/apache2/svn_configs/svn_config.conf</string> </array> <key>requiredModuleNames</key> <array> <string>dav_svn_module</string> <string>authz_svn_module</string> </array> <key>sslPolicy</key> <integer>1</integer> </dict> </plist>
Я добавил LoadModule(s) для mod_dav_svn.so и mod_authz_svn.so в /Library/Server/Web/Config/apache2/httpd_server_app.conf:
LoadModule dav_svn_module libexec/apache2/mod_dav_svn.so LoadModule authz_svn_module libexec/apache2/mod_authz_svn.so
Я создал **/private/etc/apache2/svn_configs/svn_config.conf**:
<Location /svn/repo1> DAV svn AuthName "Subversion auth" SVNPath /Users/someUser/Repositories/Repo1Repo <Limit GET HEAD OPTIONS CONNECT POST PROPFIND PUT DELETE PROPPATCH MKCOL COPY MOVE LOCK UNLOCK> Require group repo1users </Limit> AuthType Basic Require group repo1users </Location>
Я выполнил из терминала:
webappctl start com.site.svn
и после этого я могу достичь repo1 через https://site/svn/repo1
но когда я пытаюсь проверить систему, я получаю:
>>>svn co https://site/svn/repo1 Authentication realm: <https://site:443> UserWebDAV Gateway Password for 'someUser': svn: access to 'https://site/svn/repo1' forbidden
Есть ли у вас какие-либо понятия, почему у меня такая ситуация?
PS права на
/Users/someuser/Repositories /Users/someuser/Repositories/Repo1Repo /Users/someuser/Repositories/Repo1Repo/*
777, владелец / группа - _www: _www
Я использовал для этого - я прочитал http://www.themacosxserveradmin.com/2011/01/lion-server-and-svn.html и попытался интегрировать его в горного льва.
Спасибо за ваши мысли.
1 ответ
Потратил несколько дней, занимаясь тем же вопросом. Хотя моя конфигурация не точно такая же, она должна быть достаточно близко, чтобы помочь вам выполнить то, что вы пытаетесь сделать. Был в состоянии связать проблему аутентификации с включенным WebDAV для Wiki (в приложении Сервера). Если вы отключите поддержку WebDAV, там все начнет работать. В моем случае я решил просто создать дополнительный слушатель в Apache на пользовательском порту (8080 или 8443) и разместил там все мои инструкции по настройке SVN, так что все локализовано в одном месте.
Удачи!