Рубрики
Uncategorized

Установка службы управления версиями SVN в Ubuntu

Автор оригинала: David Wong.

Сегодня мы развертываем службу управления версиями SVN в среде Ubuntu.

I. Загрузка и установка

# apt-get install subversion

II. Создание Каталогов

# mkdir /home/svn
# mkdir /home/svn/repository
# chmod -R 777 /home/svn/repository

3. Создание складов

# svnadmin create /home/svn/repository

Просмотр каталога репозитория:

# cd /home/svn/repository
/home/svn/repository# ls -l
total 24
-rw-r--r-- 1 root root  246 Sep  2 14:13 README.txt
drwxr-xr-x 2 root root 4096 Sep  2 14:13 conf
drwxr-sr-x 6 root root 4096 Sep  2 14:13 db
-r--r--r-- 1 root root    2 Sep  2 14:13 format
drwxr-xr-x 2 root root 4096 Sep  2 14:13 hooks
drwxr-xr-x 2 root root 4096 Sep  2 14:13 locks

IV. Изменение файлов конфигурации

Введите файл конфигурации:

[email protected]:/home/svn/repository# cd conf
[email protected]:/home/svn/repository/conf# ls -l
total 20
-rw-r--r-- 1 root root 1080 Sep  2 14:13 authz
-rw-r--r-- 1 root root  885 Sep  2 14:13 hooks-env.tmpl
-rw-r--r-- 1 root root  309 Sep  2 14:13 passwd
-rw-r--r-- 1 root root 4371 Sep  2 14:13 svnserve.conf

1. Измените файл svnserve.conf

vim svnserve.conf

Удалите следующие параметры из комментария:

[general] 
  Anon-access = none# anonymous access permission, default read, none is not allowed access 
  Auth-access = write # authenticate user rights  
  Password-db = passwd # User Information Storage File. By default, under Version Library / conf, you can also specify the file location by absolute path 
  authz-db = authz

2. Изменить файл passwd

vim passwd

Добавьте имя пользователя и пароль, например

corwien = corwien_123

3. Изменить файл authz

vim authz

В разделе [группа] добавьте:

admin=corwien
[/]
@admin=rw

V. Запустите службу SVN

#  svnserve -d -r /home/svn

Проверьте, начался ли процесс:

# ps aux | grep svnserver
root       134  0.0  0.0  11460  1052 pts/1    S+   14:22   0:00 grep --color=auto svnserver

С вышеуказанной точки зрения, процесс начался.

6. Тестирование на Клиенте

Мы создали адрес службы SVN: svn://ip/репозиторий

Будьте осторожны : Порт по умолчанию-3690. Откройте этот порт.

7. Настройка загрузки и самостоятельного запуска

Сначала проверьте местоположение svnserve

which svnserve

Например, возврат

/usr/bin/svnserve

Имейте это в виду. Более поздние сценарии должны начать писать сценарии

 cd /etc/init.d
 vim svn.sh

Пишите после открытия

#!/bin/bash
/usr/bin/svnserve -d -r /home/svn

Добавьте разрешения на выполнение файлов после завершения сохранения

chmod +x /etc/init.d/svn.sh

открыть /etc/rc.d/rc.local Чтобы добавить новые строки

etc/init.d/svn.sh

Перезагрузите систему, чтобы увидеть если SVN загружается

Восемь, крюк

Введите SVN проекта, чтобы найти папка “крючки”

[email protected]:/home/svn/repository/hooks# ls -l
total 36
-rwxr-xr-x 1 root root 2634 Sep  2 14:13 post-commit.tmpl
-rwxr-xr-x 1 root root 2773 Sep  2 14:13 post-lock.tmpl
-rwxr-xr-x 1 root root 2994 Sep  2 14:13 post-revprop-change.tmpl
-rwxr-xr-x 1 root root 2605 Sep  2 14:13 post-unlock.tmpl
-rwxr-xr-x 1 root root 4038 Sep  2 14:13 pre-commit.tmpl
-rwxr-xr-x 1 root root 3621 Sep  2 14:13 pre-lock.tmpl
-rwxr-xr-x 1 root root 3469 Sep  2 14:13 pre-revprop-change.tmpl
-rwxr-xr-x 1 root root 3309 Sep  2 14:13 pre-unlock.tmpl
-rwxr-xr-x 1 root root 3754 Sep  2 14:13 start-commit.tmpl

Введение функции шаблона крючков SVN

Triggering transactions before start-commit commit commits
Triggering transactions before pre-commit commits
Post-commit Triggers Transactions upon Completion of Submission
Triggering transactions before property modification of pro-revprop-change version
Post-revprop-change version attributes modified to trigger transactions
Execute the script after post-lock locks the file

Пример:

chmod 755 post-commit && vim post-commit
#!/bin/sh

# POST-COMMIT HOOK

REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8
Svn = / usr / bin / SVN ා the SVN file in the bin directory of SVN installation is configured here.
WEB=/var/www/myweb# Directory to be updated
$SVN update $WEB --username adm --password adm
chown -R www:www $WEB

Войдите в /var/www/myweb Папка вручную проверяет библиотеку версий SVN, и следующее обновление версии SVN будет автоматически обновлено на сервере

Статьи по теме:

Установка SVN в Ubuntu Ubuntu 14.04 Быстрая сборка сервера SVN и Ежедневное использование практических заметок SVN (Теоретические концепции) – Контроль версий

Оригинал: “https://developpaper.com/installation-of-svn-version-control-service-under-ubuntu/”