Как установить svn linux

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник

Установка и настройка svn сервера под linux

sudo apt-get install subversion libapache2-svn

  • subversion – svn сервер
  • libapache2-svn – библиотека, которая добавляет модуль апача для его интеграции с svn

И на всякий случай уточню, что sudo означает, что команда запускается с права root’а. Вы можете в консоли предвариетльно просто написать su, ввести пароль и потом выполнять эту и последующие аналогичные команды без приставки sudo.

Теперь добавляем нового пользователя и группу SVN

sudo useradd -m -d /srv/svn/ -g svn svn

Тут первой строкой мы создали группу svn. А второй строкой мы создали пользователя svn и сразу добавили его в группу svn. Поясню про флаги команды useradd:

  • -m -d /srv/svn – автоматическое создание домашнего каталога (флаг -m) и установка этого каталога как базового (-d) . В эту папку мы позже положим конфиги svn и репозитории так же будем тут размещать.
  • -g svn— добавить нового пользователя в группу svn
  • svn – имя пользователя
Читайте также:  Windows 10 грузится больше часа

svnadmin create /srv/svn/repositories/firstproject/

Первой строкой мы перелогинились под пользователя svn. Затем создаём папку repositories. В этой папке будут храниться наши репозитории. Далее создали папку для нашего первого проекта. И наконец командой svnadmin create /srv/svn/repositories/firstproject/ мы создаём новый пустой репозиторий для нашего проекта по указанному пути.

Теперь создаём конфиги для нашего SVN сервера.

mkdir /srv/svn/conf/
cd /srv/svn/conf/
touch apache.conf

При помощи команды touch мы просто создаём новый пустой файл.

Теперь содержимое этих файлов:

/srv/svn/conf/apache.conf

# our access control policy

#try anonymous access first, resort to real

#authentication if necessary.

# how to authenticate a user

AuthName «Subversion repository on yas-desktop»

Вкратце по директивам.

  • SVNParentPath /srv/svn/repositories/ – указываем путь к репозиториям
  • AuthzSVNAccessFile /srv/svn/conf/users-access-file – путь к файлу, в котором указывается какого пользователя к какому проекту и с какими правами пускать (ниже будет чуть подробнее)
  • AuthUserFile /srv/svn/conf/passwd – в этом файле хранятся зашифрованные пароли пользователей. Этот файл мы чуть ниже создадим при помощи утилитки htpasswd.

/srv/svn/conf/users-access-file

Первыми двумя строками мы запрещаем доступ анонимам к репозиториям. Т.е. мы как быговорим: «всем (*) доступ к корню репозиториев ([/]) пустой (т.к. после знака равно мы ничего не указали. А если бы там было r, то это означает чтение; w – запись)».

А затем мы даём для пользователя yas доступ на чтение и запись к репозиторию.Подробнее про то, как можно задавать различные права для разных пользователей и как создавать для удобства группы пользователей читайте тут

Идём дальше. Чтобы пользователь yas получил туда доступ, ему будети предложено авторизоваться. Для этого надо установить для него пароль. А для этого мы создадим файл /srv/svn/passwd (мы указывали этот файл в apache.conf для авторизации) при помощи утилиты htpasswd

Создаём /srv/svn/conf/passwd

htpasswd -c -m /srv/svn/conf/passwd yas

  • -m – метод криптования будт использован MD5
  • -c – означает, что файл надо создать. Используйте этот флагш только для того, чтобы создать этот файл впервые. Далее для добавления пользхователей используйте команду

htpasswd -m /srv/svn/conf/passwd newusername

  • /srv/svn/conf/passwd – путь к файлу, куда сохранять пароль
  • yas – имя пользователя

После ввода этой команды вам будет предложено ввести два раза пароль для вашего пользователя.

Источник

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Читайте также:  Оснастка диспетчер сервера windows

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

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

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

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

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

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

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

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

linux-notes.org

Установка SVN сервера в Debian/Ubuntu/Mint

В этой статье «Установка SVN сервера в Debian/Ubuntu/Mint» я хотел бы рассказать как установить и настроить SVN сервер в deb ОС, на примере Debian 8.

Установка SVN сервера в Debian/Ubuntu/Mint

И так, выполним установку утилиты следующей командой:

Создаю директорию для будущего репозитория:

Создаем собственно, сам репозиторий:

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

Выставляем нужные права на директорию репы:

И даем права на запись:

Сейчас, необходимо добавить скрипт SVN сервера, выполняем команду:

Даем права всем на выполнение:

Добавлю скрипт в автозагрузку ОС:

Настройка SVN в Debian/Ubuntu/Mint

В моем примере, все конфиги и различные настройки находятся в /srv/svn/repo/conf/ директории. Сейчас нужно немного видоизменить некоторые настройки в файлах.

Поправлю основной конфиг-файл:

Приводим к виду:

Пропишем доступ для пользователей и ихние пароли (пароли хранятся в открытом виде):

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

Сейчас, выставляю права на корень и назначаю группе «group1» только для чтения. Пользователю captain даю полный доступ, а всем остальным — вообще запрещаю доступ:

Настройку завершил, осталось только — запустить демон SVN чтобы начать уже работу:

PS: Сервер SVN юзает TCP 3690 порт, по этому, при необходимости откройте его в фаерволе.

Тема «Установка SVN сервера в Debian/Ubuntu/Mint» завершена.

Источник

Subversion

Содержание

Subversion

Subversion — это система контроля версий с открытым кодом. Используя Subversion вы можете записывать историю исходных файлов и документов. Она управляет файлами и каталогами во времени. Дерево файлов располагается в центральном хранилище. Хранилище больше похоже на обычный файл-сервер, за исключением того, что он помнит каждое изменение когда-либо сделанное в файлах или каталогах.

Установка

Для доступа к хранилищу Subversion с помощью протокола HTTP вы должны установить и настроить web сервер. Apache2 гарантированно работает с Subversion. Пожалуйста, обратитесь к разделу Apache2 для установки и настройки Apache2. Для доступа к хранилищу Subversion по протоколу HTTPS вам потребуется установить и настроить цифровой сертификат для вашего Apache2 сервера. Пожалуйста, обратитесь к подразделу HTTPS в разделе по Apache2 для установки и настройки цифрового сертификата.

Для установки Subversion выполните следующую команду в терминале:

Настройка сервера

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

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

Хранилище Subversion может быть создано с помощью следующей команды в терминале:

Импортирование файлов

После того, как вы установили хранилище, вы можете импортировать в него файлы. Для импорта каталога, ведите следующее в терминале:

Методы доступа

Хранилище Subversion может быть доступно множеством различных способов — на локальном диске или через различные сетевые протоколы. Однако, размещение хранилища — это всегда url адрес. Таблица описывает как различные URL схемы связаны с возможными методами доступа.

Методы доступа
Схема Метод доступа
file:// Прямо доступ к хранилищу (на локальном диске)
http:// Доступ через протокол WebDAV к web-серверу Apache2, настроенному на Subversion
https:// То же самое, что и http://, но с использованием шифрования SSL
svn:// Доступ через собственный протокол к серверу svnserve
svn+ssh:// То же самое, что svn://, но через туннель SSH

В этом разделе мы рассмотрим как настроить Subversion для всех этих методов доступа. Здесь мы рассмотрим основное. Для более продвинутого использования, обратитесь к книге svn book.

Прямой доступ к хранилищу (file://)

Это самый простой из всех методов доступа. Он не требует запуска какого-либо сервера Subversion. Этот метод используется для доступа к Subversion на этой же машине. Синтаксис команды, вводимой в терминале, аналогичен следующему:

Права доступа к хранилищу определяются правами файловой системы. Если пользователь имеет право на чтение/запись, он может получить содержимое хранилища и внести изменения.

Доступ через протокол WebDAV (http://)

Для доступа к хранилищу Subversion через протокол WebDAV вам потребуется настроить сервер Apache2. Добавьте следующий фрагмент между элементами и в /etc/apache2/sites-available/default или иной VirtualHost файл:

Далее вы должны создать файл /etc/subversion/passwd, который будет содержать подробности аутентификации пользователей. Для создания файла используйте следующую команду в командной строке (которая создаст файл и добавит первого пользователя):

Чтобы добавить дополнительных пользователей, опустите опцию «-c», поскольку она заменяет старый файл. Вместо этого используйте такой вариант:

Эта команда запросит у вас ввод пароля. Как только вы введете пароль, пользователь будет добавлен. Теперь для доступа к хранилищу вы можете выполнить следующую команду:

Доступ по протоколу WebDAV с шифрованием SSL (https://)

Вы можете установить цифровой сертификат, выпущенный центром сертификации. В качестве альтернативы можно использовать самоподписанный сертификат.

Эта часть подразумевает, что вы установили и настроили цифровой сертификат в вашем сервере Apache2. Теперь чтобы получить доступ к хранилищу Subversion смотрите предыдущий раздел. Метод доступа практически тот же самый, за исключением протокола. Вы должны использовать https:// для доступа к хранилищу Subversion.

Доступ через собственный протокол (svn://)

Как только создано хранилище Subversion, вы можете настроить контроль доступа. Вы можете отредактировать файл /path/to/repos/project/conf/svnserve.conf для изменения контроля доступа. Например, для установки авторизации вы можете раскомментировать следующие строки в файле конфигурации:

После снятия знака комментария (#) с этих строк, вы можете поддерживать список пользователей в файле passwd. И так, редактируйте файл passwd в этом же каталоге и добавляйте новых пользователей. Синтаксис должен быть таким:

Более подробно смотрите комментарии в самом файле.

Теперь, чтобы подключиться к Subversion через собственный протокол svn://, с этой же машины или другой, вы можете запустить svnserver с помощью команды svnserve. Синтаксис следующий:

Как только вы выполните указанную команду, Subversion запустится на порту по умолчанию (3690). Для доступа к хранилищу проектов вам потребуется выполнить следующую команду из терминала:

Основываясь на конфигурации сервера, у вас будет запрошен пароль. После аутентификации будет проверен код из хранилища Subversion. Для синхронизации проекта из хранилища с локальной копией вам потребуется выполнить подкоманду update. Синтаксис команды, вводимой в терминале следующий:

Для подробной информации о каждой подкоманде Subversion вы можете обратиться к встроенному руководству. Например, чтобы узнать больше о команде co (checkout) выполните следующую команду в терминале:

Доступ по собственному протоколу с SSL шифрованием (svn+ssh://)

Настройка и работа сервера такая же, как при svn:// методе. Детали описаны в предыдущей части.Этот шаг предполагает, что вы следовали инструкциям предыдущей части и запустили сервер Subversion с помощью команды svnserve.

Также предполагается, что у вас на машине запущен сервер ssh и он разрешает входящие соединения. Для проверки, пожалуйста, попробуйте войти на машину с использованием ssh. Если вам удалось соединиться, все замечательно. Если соединиться не получилось, обратитесь к данной проблеме, прежде чем следовать дальше.

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

© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

Источник

Читайте также:  Ffmpeg для windows server
Оцените статью