Проект Templet

акторный фреймворк для запуска задач
на множестве ядер, кластерах и в облаках
templet.ssau.ru

Инструменты пользователя

Инструменты сайта


templet:настройка_сервера_системы_контроля_версий_svn

Настройка сервера системы контроля версий

Система поддерживает репозитории Subversion для работы с шаблонами и проектами. Вам потребуется SVN репозиторий для хранения исходного кода проекта.

Subversion - система контроля версий с открытым исходным кодом. Используя Subversion вы можете записывать историю исходных текстов и документов. Он управляет файлами и директориями. Дерево файлов располагается в центральном репозитории. Репозиторий - это обычный сервер, запоминающий каждое изменение файлов и директорий.

Возможности использования Subversion:

  • Публичный хостинг (Google Code, Source Forge)
  • Приватный хостинг
  • Свой сервер

Для небольших проектов предпочтение следует отдать публичному или приватному хостингу.

Создание репозитория на сервере

Рассмотрим вариант настройки своего сервера для работы с Subversion на примере ОС Ubuntu 12.04 LTS. Linux сервер выбран в связи с тем, что вы можете использовать один сервер как для тестов, так и для хранения исходного кода проекта. Для приложений научных вычислений рекомендуется разрабатывать и тестировать приложения на Linux, в связи с тем, что все ведущие суперкомпьютерные центры используют Linux в качестве основной ОС узлов.

Пакет subversion доступен в стандартном репозитории ОС Ubuntu. Достаточно установить и настроить его параметры.

Настройка subversion:

1. Создаём группу пользователей subversion
2. Добавляем пользователя от которого вы работаете и пользователя www-data в группу subversion
3. Создаём каталог для репозиториев:

$ sudo mkdir /home/svn
$ cd /home/svn
$ sudo mkdir myproject

4. Создаём репозиторий

$ sudo svnadmin create /home/svn/myproject

5. Назначаем права на директории

$ cd /home/svn
$ sudo chown -R www-data:subversion myproject
$ sudo chmod -R g+rws myproject

Доступ по протоколу HTTP

Для доступа по протоколу HTTP у вас должен быть установлен сервер Apache 2.

1. Установить пакет libapache2-svn
2. Настраиваем конфигурацию WebDAV /etc/apache2/mods-available/dav_svn.conf

  <Location /svn/myproject>
     DAV svn
     SVNPath /home/svn/myproject
     AuthType Basic
     AuthName "myproject subversion repository"
     AuthUserFile /etc/subversion/passwd
     <LimitExcept GET PROPFIND OPTIONS REPORT>
        Require valid-user
     </LimitExcept>
  </Location>

3. Если вы хотите запретить доступ для анонимных пользователей, использовать конфигурацию:

  <Location /svn>
     DAV svn
     SVNParentPath /home/svn
     SVNListParentPath On
     AuthType Basic
     AuthName "Subversion Repository"
     AuthUserFile /etc/subversion/passwd
     Require valid-user
  </Location>

4. Перезапустить сервер Apache

sudo service apache2 restart

5. Создать файл паролей для SVN

sudo htpasswd -c /etc/subversion/passwd user_name

6. Если требуется добавить пользователей

sudo htpasswd /etc/subversion/passwd second_user_name

7. Посмотреть список пользователей

cat /etc/subversion/passwd

8. Проверить доступ к серверу

$ svn co http://hostname/svn/myproject myproject --username user_name
templet/настройка_сервера_системы_контроля_версий_svn.txt · Последнее изменение: 2013/10/28 20:46 — artamonov