Во-первых, спасибо всем, кто ответил на мой предыдущий вопрос - https://stackoverflow.com/questions/1393827/setting-up-svn-web-based-services-vs-your-own-svn-server
Как бы я ни предпочел использовать веб-решение, сервер svn должен быть реализован в офисе.
В настоящее время мы запускаем FreeBSD на нашем сервере, в настоящее время я ищу информацию о настройке репозитория SVN на сервере с помощью командной строки.
Раньше я использовал команды терминала в Ubuntu, поэтому у меня есть кое-какие идеи, но я далеко не эксперт. Я наткнулся на несколько руководств, но они кажутся совершенно разными и пропускают несколько фрагментов. Я действительно ищу пошаговое руководство по настройке репозитория и его пользователей. В идеале руководство для начинающих, чтобы я точно знал, что происходит.
Я был бы очень признателен за любые подсказки или указатели в правильном направлении.
Спасибо за уделенное время.
Я советую вам сначала попробовать использовать демон svnserve, который поставляется вместе с subversion. Он использует свой собственный протокол через TCP, поэтому для всех операций с репозиторием вы будете использовать схему URL svn: //, например:
% svn checkout svn://localhost/myproject
Итак, после установки порта devel / subversion:
# cd /usr/ports/devel/subversion # make WITHOUT_BDB=1 WITH_SVNSERVE_WRAPPER=1 WITH_REPOSITORY_CREATION=1 install clean
вы получите свежий пустой репозиторий в /home/svn/repos
. Порт также создаст svn
пользователь и svn
группа (проверьте их обоих в /etc/passwd
и /etc/group
файлы, чтобы быть уверенным).
Затем добавьте эти строки к вам /etc/rc.conf
:
svnserve_enable="YES" svnserve_flags="-d --listen-port=3690 --listen-host 127.0.0.1" svnserve_data="/home/svn/repos" svnserve_user="svn" svnserve_group="svn"
Измените 127.0.0.1 на другой IP-адрес, доступный с других машин, если вам это нужно. Запустите демон с помощью команды:
# /usr/local/etc/rc.d/svnserve start
Если ошибок не произошло, проверьте запущенный демон:
# /usr/local/etc/rc.d/svnserve status svnserve is running as pid 65968.
или
# sockstat | grep svn svn svnserve 65968 3 tcp4 127.0.0.1:3690 *:*
ХОРОШО. Теперь вам нужно создать аутентификацию для каждого пользователя для svnserve. Это делается путем редактирования /home/svn/repos/conf/passwd
файл, например:
[users] bob = password joe = another_password alex = yet_another_password
Затем убедитесь, что в /home/svn/repos/conf/svnserve.conf
файл существует эти строки:
[general] anon-access = none auth-access = write password-db = passwd
Вот и все. Теперь вы можете импортировать свои источники в этот репозиторий. Чтобы получить больше информации пожалуйста прочти http://svnbook.red-bean.com/en/1.5/svn.serverconfig.svnserve.html
Контроль версий с помощью Subversion - это источник, к которому я обычно обращаюсь за информацией о Subversion. Главы 5 и 6 выглядят так, как будто они могут направить вас в правильном направлении.
Я рекомендую получить доступ к репозиторию с помощью HTTP, что упростит многие вещи для клиентов (особенно, если они находятся за брандмауэром). Я люблю ходить путь апачей.
$ su -
$ cd /usr/ports/devel/subversion
$ make install clean
Ответьте на вопросы, задаваемые во время установки, и вы получите работающую установку Subversion.
Если вы не видите диалоговое окно с запросом параметров конфигурации, введите
$ make config
Чтобы разрешить включение модуля apache, svnserve и некоторых других параметров.
Последняя версия доступна в виде порта и готовый пакет.
Чтобы установить пакет,
sudo pkg install subversion
И обязательно прочтите и следите за текстом с подробностями.