ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Начало работы с SVN на Linux

Начало работы с SVN на Linux

В сегодняшней статье мы покажем вам, как установить Subversion на Linux VPS, а также некоторые основные команды Subversion. Subversion, или сокращенно SVN  является программным обеспечением управления версиями и контроля версий системы с открытым исходным кодом. Это позволяет пользователям поддерживать текущие и версии файлов в истории, таких как исходный код, веб – страниц, документов и других электронных данных.

Во- первых, установим SVN на Linux

Для того чтобы установить SVN, необходимо подключиться к Linux VPS через SSH.

Если вы используете Ubuntu, обновите пакеты ОС и установите SVN на сервере, используя следующие команды:

sudo apt-get update
sudo apt-get install svn

 

Если вы используете CentOS, вы можете использовать следующую команду для обновления пакетов ОС и установки SVN:

yum update
yum install svn

 

Чтобы проверить версию SVN, установленной на вашем сервере, используйте следующую команду:

# svn --version
svn, version 1.7.14 (r1542130)

 

Создайте учетную запись пользователя системы и переключитесь на этого пользователя:

useradd -M someuser

 

Замените ‘someuser’ на действительное имя пользователя.

su someuser
cd ~

 

Создайте новый каталог для ваших файлов проекта/приложений/веб-сайта:

mkdir -p svn/myapp

 

Создайте хранилище SVN с помощью следующей команды:

sudo svnadmin create /home/someuser/svn/myapp

 

Установите соответствующие права доступа к файлам. Распределения на основе Debian, выполните следующую команду:

chown -R www-data:subversion myapp
chmod -R g+rws myproject

 

О распределении RPM на основе (при использовании Apache в качестве веб-сервера), выполните следующую команду:

chown -R apache:subversion myapp
chmod -R g+rws myproject

 

Создайте файл ‘passwd’ в каталоге /home/someuser/svn/myapp/conf/passwd на сервере, который содержит информацию о аутентификации пользователя:

sudo htpasswd -c /home/someuser/svn/myapp/conf/passwd someuser

 

Если вы хотите добавить пользователей, используйте ту же команду, но без переключателя ‘-c‘, чтобы избежать перезаписи файла passwd.

Назначение разрешений для пользователей SVN с помощью файла authz (/home/someuser/svn/myapp/conf/authz):

Создание концептуальных групп, которые вам нужны, а затем добавить к нему пользователей:

[groups]
allaccess = someuser
someaccess = someuser2

 

Выберите уровень доступа с обоих разрешений и уровня проекта:

Чтобы дать разрешения для чтения и записи “allaccess” для пользователей, добавьте:

[/]
@allaccess = rw

 

Для того, чтобы дать доступ только для чтения к “someaccess” пользователям к некоторому проекту нижнего уровня, добавьте:

[/someproject]
@someaccess = r

 

Для того, чтобы скопировать неверсионное дерево вашего проекта/файлов веб-сайта и начать отслеживать в вашем хранилище SVN и создать промежуточные каталоги, введите следующие команды:

svn import -m "Initial import" local/path/ https://svn.yourdomain.com/path/to/svn/repo/

 

Вы можете создать единое хранилище для каждого проекта/сайта на каком – то центральном месте, где вся история.
Чтобы создать рабочую копию в другой локальный каталог, используйте:

svn co https://svn.yourdomain.com/path/to/svn/repo/ /local/path/directory2

 

Для того, чтобы отправить изменения из рабочей копии в хранилище, используйте:

svn commit -m "добавьте краткую информацию об изменениях здесь">

 

Используйте команду ‘svn add /path/file’, чтобы добавить файл из рабочей копии в хранилище. Файл будет добавлен в хранилище, когда вы делаете commit SVN.

Чтобы удалить файл из рабочей копии (или хранилище), используйте:

svn delete /path/file

 

и файл будет удален из хранилища после команды svn commit.

Чтобы обновить изменения из хранилища в рабочую копию, используйте:

svn update

 

При наличии нескольких авторов, работающих над проектом/веб-сайтом, они имеют локальные рабочие копии на нескольких машинах, всегда запускайте команду ‘svn update’ перед внесением изменений в файлы, доступные в вашей рабочей копии. После этого, вносите изменения в файлы, а затем зафиксируйте изменения в хранилище после того, как только файлы будут изменены.

Для того чтобы применить различия между двумя источниками на пути в рабочей копии, используйте:

svn merge

 

Для того, чтобы увидеть различия между этими двумя конкретными версиями файла, используйте:

svn diff -r revision1:revision2 filename

Начало работы с SVN на Linux

Exit mobile version