Установите Subversion с Web Access в Ubuntu
В этой статье рассматривается установка Subversion с помощью модуля apache, чтобы к нему можно было легко получить доступ из других систем в общедоступной сети. Если вы хотите более безопасный сервер SVN, вы можете использовать svnserve + ssh, который не рассматривается в этой статье.
Чтобы установить Subversion, откройте терминал и выполните следующую команду:
sudo apt-get установить subversion libapache2-svn
Мы собираемся создать хранилище Subversion в / svn, хотя вы должны выбрать место, которое имеет достаточно места.
sudo svnadmin создать / svn
Далее нам нужно отредактировать файл конфигурации для модуля subversion webdav. Вы можете использовать другой редактор, если хотите.
sudo gedit /etc/apache2/mods-enabled/dav_svn.conf
Элемент Location в файле конфигурации определяет корневой каталог, из которого будет доступна subversion, например: http://www.server.com/svn
Строка DAV должна быть раскомментирована, чтобы включить модуль dav
# Раскомментируйте это, чтобы включить репозиторий,
DAV свн
Строка SVNPath должна быть установлена в том же месте, где вы создали репозиторий с помощью команды svnadmin..
# Установите это путь к вашему хранилищу
SVNPath / SVN
Следующий раздел позволит вам включить аутентификацию. Это просто базовая аутентификация, поэтому не считайте ее чрезвычайно безопасной. Файл паролей будет расположен там, где параметр AuthUserFile устанавливает его… вероятно, лучше оставить его по умолчанию.
# Раскомментируйте следующие 3 строки, чтобы включить базовую аутентификацию
AuthType Basic
AuthName «Subversion Repository»
AuthUserFile /etc/apache2/dav_svn.passwd
Чтобы создать пользователя в хранилище, используйте следующую команду:
sudo htpasswd2 -cm /etc/apache2/dav_svn.passwd
Обратите внимание, что вы должны использовать опцию -c только в первый раз, когда вы создаете пользователя. После этого вы захотите использовать только опцию -m, которая указывает MD5-шифрование пароля, но не создает файл заново..
Пример:
sudo htpasswd2 -cm /etc/apache2/dav_svn.passwd geek
Новый пароль:
Введите повторно новый пароль:
Добавление пароля для пользователя geek
Перезапустите apache, выполнив следующую команду:
sudo /etc/init.d/apache2 restart
Теперь, если вы перейдете в браузере по адресу http://www.server.com/svn, вы должны увидеть, что репозиторий включен для анонимного доступа для чтения, но для доступа к фиксации потребуется имя пользователя.
Если вы хотите заставить всех пользователей проходить аутентификацию даже для доступа на чтение, добавьте следующую строку прямо под строкой AuthUserFile сверху. Перезапустите apache после изменения этой строки.
Требуется действительный пользователь
Теперь, если вы обновите свой браузер, вам будет предложено ввести учетные данные:
Теперь у вас есть рабочий сервер Subversion!