среда, 20 июля 2011 г.

SVN: изменение параметров хранилища

Во FreeBSD всё просто и логично: открываем /etc/rc.conf и вписываем:

svnserve_enable="YES"
svnserve_flags="-d --listen-port=3690"
#svnserve_data="/usr/local/repositories"
#svnserve_data="/backup/SVN"
svnserve_data="/var/svn"
svnserve_user="svn"
svnserve_group="svn"

В CentOS всё сильно хуже: чтобы понять, что куда вписывать, пришлось гуглить часа 3, а дальше методом перебора...
Для начала, создать файл /etc/sysconfig/svnserve

cat /etc/sysconfig/svnserve
#OPTIONS="svnserve_data=/var/svn"
#svnserve_data=/var/svn
#SVNREPO=/var/svn
#root=/var/svn
#SVNSERVE_OPTIONS="-d -r /var/svn/"
OPTIONS="--root=/var/svn"

Проверять, что получилось, можно через
ps auxwww|grep svn

Вдобавок, надо будет создать пользователя svn и прописать его
useradd -u 1006 -d /var/svn svn

Создав тестовый репозитарий, нас будет ждать неприятный сюрприз: владелец-рут. Исправим.
нужен wrapper

Одинаковые пути для svn:// и svn+ssh://
http://blog.stranadurakov.com/2009/08/26/how-to-remove-absolute-path-in-svn-ssh/
mv /usr/bin/svnserve /usr/bin/svnserve.bin
vi /usr/bin/svnserve

#!/bin/sh
umask 002
exec /usr/bin/svnserve.bin -r /path-to-repos "$@"

Выставим права на исполнение.
chmod 755 /usr/bin/svnserve

Вариант через xinetd (надо бы проверить, но я этот демон не признаю)
http://en.gentoo-wiki.com/wiki/Subversion/Install
Актуально для gentoo, но тут подогнать будет просто.

Шифрованные пароли
Штатно они открытым текстом. Можно подключить sasl
http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-serversetup-svnserve.html

Но шифроваться они будут только при передаче или и на сервере тоже?...

Если что -- про настройку в OpenSUSE
http://index01d.com/?p=9

Комментариев нет:

Отправить комментарий