Дек 242012
 
i

Система контроля версий SVN очень нужная вещь. Особенно, при совместной разработке проектов с несколькими участниками. Очень сложно найти хороший бесплатный сервер SVN, которому можно доверять свои исходных код — лучше создать свой. В статье расскажем насколько просто установить Subversion на Centos 6.

Установим Apache, SLL, модуль SVN для apache и сам Subversion:

#yum install httpd mod_ssl subversion mod_dav_svn

Команда также установит зависимые пакеты.

Теперь перейдем к настройке:
1) Настройка доступа к репозитарию через https протокол.
Все настройки для SVN сервера находятся в файле /etc/httpd/conf.d/subversion.conf, конфиг нужно привести к виду:

DAV svn # включить SVN сервер
SVNParentPath /home/svn/work # путь до корневой директории репозитария
SVNListParentPath on # разрешить просмотр репозитариев через браузер
SSLRequireSSL # требовать шифрованние соединения по протоколу https

AuthType Basic # использовать стандартную авторизацию Apache
AuthName Authorization Realm
AuthUserFile /home/svn/conf/.htpasswd # файл с пользователями и паролями
AuthzSVNAccessFile /home/svn/conf/.svnaccess # права доступа к репозиториям
Require valid-user # запретить анонимный доступ

2) Создание репозитория
Создадим репозиторий test в папке /home/svn/work

# mkdir /home/svn/
# mkdir /home/svn/work
# svnadmin create /home/svn/work/test
# chown apache.apache /home/svn -R

Репозиторий готов к работе. Аналогично вы можете создавать репозитарии и для других ваших проектов на одном сервере.
Осталось настроить пользователей для доступа к репозитариям.

3) Создание пользователей
# htpasswd -c /home/svn/conf/.htpasswd test
Первый запуск для создания файла паролей, test — имя пользователя. После запроса введите пароль для данного пользователя.

# htpasswd /home/svn/conf/.htpasswd test2
Добавление пользователей, либо смена паролей в уже созданном файле паролей.

4) Настройка прав доступа к репозитариям
В файле /home/svn/conf/.svnaccess укажем права доступа к репозитариям.
[/]
* =
admin = rw
[/test]
test = rw
test2 = r

Вот и все, настройка закончена. Перезапускаем httpd сервер:
#/etc/init.d/httpd restart
и заходим по адресу https://IP/svn/test и после авторизации видим наш репозитарий.

PS: При создании дополнительного репозитария не забудьте дать права на запись и чтение вебсерверу.
# chown apache.apache /home/svn/word/XXXX -R

 Leave a Reply

(required)

(required)

39 Запросов к базе. 0,362 Генерации страницы, 36MB Использование памяти.
Вы зашли с IP: 54.198.108.19