Установка сервера системы управления версиями Subversion (SVN) в Ubuntu

Дата: 14/01/2014
Тема: Linux

Subversion — это бесплатная система управления версиями с открытым исходным кодом. Subversion позволяет управлять файлами и каталогами, а так же сделанными в них изменениями во времени. Это позволяет восстановить более ранние версии данных, даёт возможность изучить историю всех изменений. Благодаря этому многие считают систему управления версиями своего рода «машиной времени».

Subversion может работать через сеть, что позволяет использовать её на разных компьютерах. В какой то степени, возможность большого количества людей не зависимо от их местоположения совместно работать над единым комплектом данных поощряет сотрудничество. Когда нет того ответственного звена цепи, того контролирующего элемента, который утверждает все изменения, работа становится более эффективной. При этом не нужно опасаться, что отказ от контролирующего элемента повлияет на качество, ведь благодаря сохранению истории изменений, даже если при изменении данных будут допущены ошибки, всегда можно сделать откат изменений к прежнему состоянию.

Хранилище является разновидностью файл-сервера, однако не совсем обычного. Что делает хранилище Subversion особенным — это то, что он запоминает каждое внесенное изменение: любое изменение любого файла, равно как изменения в самом дереве каталогов, такие как добавление, удаление и реорганизация файлов и каталогов. сслыка:http://svnbook.red-bean.com/nightly/ru/svn-book.html

Установка:

apt-get install subversion
apt-get install libapache2-svn

Создание директории где буду хранится проекты:

mkdir /var/projects

Создание хранилища:

svnadmin create /var/projects/MyProject

Рекомендуется использовать такую организацию структуры хранилища:

/var/projects/MyProject
          /trunk
          /branches
          /tags

trunk — основная ветка разработки проекта. В нее вносятся все изменения и исправления ошибок.
tags содержит релизы проекта.
branches необходима для упрощения внесения больших изменений в код проекта. В ней хранятся ветви разработки.

svn mkdir file:///var/projects/MyProject/trunk
svn mkdir file:///var/projects/MyProject/tags
svn mkdir file:///var/projects/MyProject/branches

Настройка прав доступа:

nano /var/projects/MyProject/conf/svnserve.conf

В файле  svnserve.conf в секции [general] раскомментируйте или замените следующие строки:

## read - только чтение, none - запретить, write - чтение и запись
## Права для не авторизованных пользователей
anon-access = read
## Права для авторизованных
auth-access = write
## Файл с пользователями находится в тойже директории
password-db = passwd

Настройка пользователей.

Пользователь user с паролем 123456.

Не допускается наличие пробелов в начале строки перед параметром.

nano /var/projects/MyProject/conf/passwd

Файл – passwd:

[users]
user = 123456

Запуск сервера:

svnserve -d -r /var/projects/
  • -d : в режиме демона
  • -r : указывает корневую директорию для сервера

Теперь к хранилищу можно подключаться с других машин, например так: svn://192.168.0.217/MyProject/trunk

Для веб доступа к хранилищу можно использовать websvn, для него понадобится установить веб-сервер apache+php

apt-get install websvn

после установки в браузере наберите http://192.168.0.217/websvn/

Импорт проекта в хранилище:

svn import /путь/к/файлам/проекта  file:///var/projects/MyProject/trunk -m "Коментарий"

В качестве клиентского приложения можно использовать Eclipse или TortoiseSVN.



Это статья "Домашняя страничка Andy"
https://andy.od.ua

URL этой статьи: https://andy.od.ua/news_39.html

Яндекс.Метрика