Проект Templet

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

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

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


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

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
templet:настройка_сервера_системы_контроля_версий_svn [2013/10/27 18:51] – создано artamonovtemplet:настройка_сервера_системы_контроля_версий_svn [2013/10/28 20:46] (текущий) artamonov
Строка 1: Строка 1:
-==== Настройка сервера системы контроля версий ====+===== Настройка сервера системы контроля версий ====
 + 
 +Система поддерживает репозитории 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. Создаём каталог для репозиториев: 
 +<code> 
 +$ sudo mkdir /home/svn 
 +$ cd /home/svn 
 +$ sudo mkdir myproject 
 +</code> 
 +4. Создаём репозиторий  
 +<code> 
 +$ sudo svnadmin create /home/svn/myproject 
 +</code> 
 +5. Назначаем права на директории 
 +<code> 
 +$ cd /home/svn 
 +$ sudo chown -R www-data:subversion myproject 
 +$ sudo chmod -R g+rws myproject 
 +</code> 
 + 
 +==== Доступ по протоколу HTTP ==== 
 + 
 +Для доступа по протоколу HTTP у вас должен быть установлен сервер Apache 2. 
 + 
 +1. Установить пакет ''libapache2-svn'' \\ 
 +2. Настраиваем конфигурацию WebDAV ''/etc/apache2/mods-available/dav_svn.conf''\\ 
 +<code> 
 +  <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> 
 +</code> 
 +3. Если вы хотите запретить доступ для анонимных пользователей, использовать конфигурацию:  
 +<code> 
 +  <Location /svn> 
 +     DAV svn 
 +     SVNParentPath /home/svn 
 +     SVNListParentPath On 
 +     AuthType Basic 
 +     AuthName "Subversion Repository" 
 +     AuthUserFile /etc/subversion/passwd 
 +     Require valid-user 
 +  </Location> 
 +</code> 
 +4. Перезапустить сервер Apache 
 +<code> 
 +sudo service apache2 restart 
 +</code> 
 +5. Создать файл паролей для SVN 
 +<code> 
 +sudo htpasswd -c /etc/subversion/passwd user_name 
 +</code> 
 +6. Если требуется добавить пользователей 
 +<code> 
 +sudo htpasswd /etc/subversion/passwd second_user_name 
 +</code> 
 +7. Посмотреть список пользователей 
 +<code> 
 +cat /etc/subversion/passwd 
 +</code> 
 +8. Проверить доступ к серверу 
 +<code> 
 +$ svn co http://hostname/svn/myproject myproject --username user_name 
 +</code>
templet/настройка_сервера_системы_контроля_версий_svn.1382899899.txt.gz · Последнее изменение: 2013/10/27 18:51 (внешнее изменение)