- Исходные данные
# uname -sr FreeBSD 10.3-RELEASE # pkg_info | grep subversion subversion-1.9.4 Version control system
- Установка
# cd /usr/ports/devel/subversion # make install clean
Настройки порта:[ ] BDB Berkeley DB support [ ] DOCS Build and/or install documentation [x] FREEBSD_TEMPLATE FreeBSD Project log template [ ] MAINTAINER_DEBUG Build debug version [x] NLS Native Language Support [x] SASL SASL authentication support [ ] SERF WebDAV/Delta-V (HTTP/HTTPS) repo access module [x] STATIC Build static version (no shared libs) [ ] SVNSERVE_WRAPPER Enable svnserve wrapper (umask setter) [ ] TEST Run subversion test suite [x] TOOLS Install several tools
Создаем пользователя svn и группу svn:# adduser svn
Создаем корень репозитория:# mkdir -p /home/svn # chown -R svn:svn /home/svn
- Доступ извне
Протокол svn, для этого на сервере необходимо настроить и запустить svnserve.
Файл /etc/rc.confsvnserve_enable="YES" svnserve_data="/home/svn" svnserve_flags="-d -T --listen-port=3690 --listen-host 0.0.0.0" svnserve_user="svn" svnserve_group="svn"
-T : use threads;
-d : daemon mode.
Запускаем:# /usr/local/etc/rc.d/svnserve start
Служба запустится и будет слушать подключения на порту 3690 :# sockstat -4 USER COMMAND PID FD PROTO LOCAL ADDRESS FOREIGN ADDRESS svn svnserve 81772 3 tcp4 *:3690 *:*
- Проект
Создаем проект (на сервере):# svnadmin create /home/svn/project1 # chown -R svn:svn /home/svn/project1
Настраиваем доступ (задаем SVNUSER и SVNPASSWORD). Внутри папки /home/svn/project1 появилась папка conf, идем туда.
Файл /home/svn/project1/conf/svnserve.conf (добавляем или меняем):[general] # запрет неавторизованного доступа anon-access = none # разрешение авторизованного доступ auth-access = write # говорим брать пользователей и пароли из файла # /home/svn/project1/conf/passwd password-db = passwd
Файл /home/svn/project1/conf/passwd , добавляем пользователя и пароль:[users] user1 = user1
Добавляем в репозиторий файлы из локальной папки на сервере:# cd /home/user/project1_files # svn import ./ file://home/svn/project1 --message 'Initial Layout'
или через сеть:
- добавляем папку project1_files:# svn import project1_files svn://SERVER/project1 --username user1 --password user1 --message 'Initial Layout'
- добавляем всё из текущей папки:# svn import ./ svn://SERVER/project1 --username user1 --password user1 --message 'Initial Layout'
- Проверяем
Создаем локальную копию проекта у себя на компьютере:# mkdir /home/user/project1 # svn checkout svn://SERVER/project1 --username user1 --password user1 /home/user/project1
Статья опубликована: 2016-09-14 23:42:18
Последние правки: 2017-07-07 15:44:48
Устанавливаем и настраиваем свой subversion сервер с доступом через svn-протокол.
Создаем проект, с доступом только для пользователей, прошедших проверку.