Что хотим: поднять собственный svn сервер
Что имеем: компьютер с Debian Lenny на борту
Что делаем:
Так... созрел я наконец до того, чтобы свои проекты держать в системе контроля версий. Для домашнего использования git это как из пушки во воробьям, а svn вполне должно подойти.
Перво-наперво надо поставить сам svn (в Дебиане почему-то его изначально не стоит):
1 | sudo apt-get install subversion |
Хранилище мы хотим организовать в /var/svn, поэтому создадим этот каталог:
1 | sudo mkdir /var/svn |
Создадим собственно хранилище:
1 | sudo svnadmin create /var/svn |
Перейдем в каталог с конфигами созданного хранилища:
1 | cd /var/svn/conf |
Откроем в любимом текстовом редакторе конфиг сервера, в моем случае:
1 | sudo vim svnserve.conf |
Раскомментируем опции anon-access (права анонимных пользователей, по умолчанию read -- то бишь только чтение, можно устанивить none, чтобы даже читать не могли или write, чтобы коммиты могли делать даже анонимусы (не рекомендую!)), auth-access (права авторизованных пользователей, по умолчанию разрешена запись), password-db (база данных паролей, по умолчанию passwd в том же каталоге, что и этот файл), если разделение прав не планируется, то строку authz-db не раскомментируем, раскомментируем realm и задаем имя репозитория. Сохраняем файл и открываем указанный passwd:
1 | sudo vim passwd |
и добавляем туда своего пользователя в виде username=password.
Сервер настроен, осталось запустить его:
1 | sudo svnserve --daemon --root /var/svn |
Все! Осталось сделать туда первый коммит. Изначальное дерево создаем в отдельной папке. Для svn принято иметь папки trunk, tags и branches. В папку trunk перенесем существующие файлы проекта.
1
2
3
4
5 | mkdir Project mkdir Project/trunk mkdir Project/tags mkdir Project/branches cp -R oldproject/* Project/trunk/ |
Импортируем в хранилище дерево проекта:
1 | svn import Project svn://agent@172.16.0.1/project -m 'Initial import' |
В моем случае agent это имя пользователя, то бишь меня, 172.16.0.1 -- IP новосозданного сервера. Вводим пароль, я отказался от сохранения пароля, хотя на домашней машинке можно и сохранить.
Теперь можно checkout'ить проект, править и commit'ить изменения.


Последние комментарии
1 year 11 weeks назад