Установка SVN [beta]

Автор dzhoser, 22 октября 2022, 10:13:33

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

dzhoser

Всем привет. Сегодня я расскажу как установить серверные и клиентские части SVN.

Subversion (также известная как «SVN») — свободная централизованная система управления версиями, официально выпущенная в 2004 году компанией CollabNet. С 2010 года Subversion является одним из проектов Apache Software Foundation и официально называется Apache Subversion.
С основными концепциями SVN можно ознакомиться тут

Шаг 1. Установите необходимые программные пакеты
sudo apt updatesudo apt-get install apache2sudo apt-get install subversion libapache2-mod-svn libsvn-dev
Шаг 2. Подтвердите, что соответствующий модуль в порядке

sudo a2enmod davвывод
ЦитироватьModule dav already enabled
sudo a2enmod dav_svn
ЦитироватьConsidering dependency dav for dav_svn:
    Module dav already enabled
    Module dav_svn already enabled
Перезагружаем Апач
sudo service apache2 restart
Шаг 3. Измените dav_svn.conf

sudo nano /etc/apache2/mods-enabled/dav_svn.confприводим файл к следующему содержанию копируя (CTRL+V) и вставляя (Ctrl+Shift+v)

Цитировать<Location /svn>
      # Uncomment this to enable the repository
      DAV svn
   
      # Set this to the path to your repository
      #SVNPath /var/lib/svn
      # Alternatively, use SVNParentPath if you have multiple repositories under
      # under a single directory (/var/lib/svn/repo1, /var/lib/svn/repo2, ...).
      # You need either SVNPath or SVNParentPath, but not both.
      #SVNParentPath /var/lib/svn
      SVNParentPath /works/svn
   
      # Access control is done at 3 levels: (1) Apache authentication, via
      # any of several methods.  A "Basic Auth" section is commented out
      # below.  (2) Apache <Limit> and <LimitExcept>, also commented out
      # below.  (3) mod_authz_svn is a svn-specific authorization module
      # which offers fine-grained read/write access control for paths
      # within a repository.  (The first two layers are coarse-grained; you
      # can only enable/disable access to an entire repository.)  Note that
      # mod_authz_svn is noticeably slower than the other two layers, so if
      # you don't need the fine-grained control, don't configure it.
   
      # Basic Authentication is repository-wide.  It is not secure unless
      # you are using https.  See the 'htpasswd' command to create and
      # manage the password file - and the documentation for the
      # 'auth_basic' and 'authn_file' modules, which you will need for this
      # (enable them with 'a2enmod').
      AuthType Basic
      AuthName "Subversion Repository"
      AuthUserFile /etc/apache2/dav_svn.passwd
   
      # To enable authorization via mod_authz_svn (enable that module separately):
      #<IfModule mod_authz_svn.c>
      #AuthzSVNAccessFile /etc/apache2/dav_svn.authz
      #</IfModule>
   
      # The following three lines allow anonymous read, but make
      # committers authenticate themselves.  It requires the 'authz_user'
      # module (enable it with 'a2enmod').
      #<LimitExcept GET PROPFIND OPTIONS REPORT>
        Require valid-user
      #</LimitExcept>
   
    </Location>

Шаг 4: Создайте склад

# Создать домашний каталог SVN
sudo mkdir /workssudo mkdir /svn   
# Создать хранилище проектов swlib
sudo svnadmin create /works/svn/swlib   
# Установить права доступа к каталогу Примечание: этот путь соответствует конфигурации в dav_svn.conf
sudo chown -R www-data:www-data /works/svnsudo chmod -R 775 /works/svn
Шаг 5. Создайте файл dav_svn.passwd

# Имя файла не является неправильным, обратите внимание на подчеркивание. admin - это имя пользователя
sudo htpasswd -cm /etc/apache2/dav_svn.passwd admin
    new password:
    Re-type new password:
    Adding password for user admin
   
# Создавать других пользователей без добавления параметров
sudo htpasswd -m /etc/apache2/dav_svn.passwd user1
    new password:
    Re-type new password:
    Adding password for user user1

Шаг 6: Перезапустите Apache
sudo service apache2 restart
Шаг 7: Проверьте работоспособность в браузере
#В адресной строке вводим
IP-сервера/svn/swlib


Настройка клиентов на ОС Windows
Скачиваем клиент под вашу архитектуру с
https://tortoisesvn.net/downloads.html
Ubuntu->Linux mint->Astra Linux SE->Debian 12
Для новичков