ГлавнаяРегистрацияВходВ закладки

Главная » Статьи » CentOS » Как настроить CentOS
Установка Subversion сервера на CentOS 5
Основываем репозиторий

Устанавливаем пакеты:
yum install -y subversion


Около Subversion сервера имеется 2 типа хранилища fsfs (советуется) и bdb. Если пожелаете их поспорить, вот ссылочка: http://svnbook.red-bean.com/en/1.1/ch05.html#svn-ch-5-sect-1.три (по ми - практически несомненно одолевает fsfs).

Создаем папку для репозиториев:

mkdir /var/spool/svn


Создаем репозиторий:

svnadmin create /var/spool/svn/myrepo


Переходим в папку репозитория:

компакт -диски /var/spool/svn/myrepo


Сделанный репозиторий обладает вот подобную текстуру:
conf dav db format hooks locks README.txt


Теперь же нам нужно дать доступ к репозиторию по сети.

Альтернатив включения к SVN репозиторию есть очень много (сходный перечень сможете проглядеть приказ svn --version):

* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.
- handles 'http' scheme
- handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme


Ми больше только нравится вид WebDAV / https (сохранность и спокойная служба с сервером), его мы и станем употреблять.

Ставим Apache Dav и помощь SSL (ога, сохранность рулит постоянно):
yum install -y httpd mod_dav_svn mod_ssl


Аактивируем пуск Апача при загрузке системы и запускаем его:
chkconfig httpd on
/etc/init.d/httpd start


Удостоверяемся, что все нужные модули удачно включились к Апачу:

apachectl -M 2>&1 | grep dav
dav_module (shared)
dav_fs_module (shared)
dav_svn_module (shared)


но также испытываем, включился ли SSL:

apachectl -M 2>&1 | grep ssl
ssl_module (shared)


Поскольку все операции с репозиторием теперь же станут изготовляться от имени Apache, то необходимо его делать обладателем файлов нашего репозитория:
chown -R apache.apache /var/spool/svn/myrepo/


Теперь необходимо представить Апачу, в каком месте искается наш репозиторий:
vi /etc/httpd/conf.d/subversion.conf


Подливаем вслед за тем в низу последующее:

DAV svn
SVNPath /var/spool/svn/myrepo

# Require SSL connection for password protection.
SSLRequireSSL

AuthType Basic
AuthName "Authorization Realm"
AuthUserFile /var/spool/svn/myrepo/conf/htpasswd
Require valid-user



Создаем файл паролей с одним юзером:

htpasswd -c /var/spool/svn/myrepo/conf/htpasswd nrg
New password:
Re-type new password:
Adding password for user nrg


Для прибавления следующих юзеров применяйте вот такую команду (элементарно ключ -c спускается):

htpasswd /var/spool/svn/myrepo/conf/htpasswd nrg2


Используем опции:

/etc/init.d/httpd restart


Распробуем раскрыть репозиторий по открытому соединению: http://domain.ru/myrepo и в протест обязаны заполучить "You don't have permission to access" - сие верное действие (в логах оно сопутствуется последующими записями: "access to /var/www/html/myrepo failed, reason: SSL connection required"). Только после всего этого распробуем включиться по httpS: https://domain.ru/myrepo и в ответ мы должны получить ликующее "Revision 0: /", это рассказывает о этом все рабоатет прекрасно и мы заполучили доступ к нашему репозиторию средством WEB_DAV и SSL.

Теперь пробуем подключиться из SVN клиента:
svn co https://domain.ru/myrepo
Error validating server certificate for 'https://domain.ru:443':
....
(R)eject, accept (t)emporarily or accept (p)ermanently? p
Authentication realm: Authorization Realm
Password for 'nrg':
Checked out revision 0.

Сходу вслед стоит досоздать папку trunk:
svn mkdir trunk
svn ci -m 'create trunk'

И все — около Вас есть свой, супер непроницаемый, вразумительный из другой точки решетка SVN репозиторий!

Основано на: http://wiki.centos.org/HowTos/Subversion
Просмотров: 2950
Дата: 2011-08-05 16:44:37
Комментариев: 0
Источник: