- linux-notes.org
- Установка SVN сервера в Debian/Ubuntu/Mint
- Установка SVN сервера в Debian/Ubuntu/Mint
- Настройка SVN в Debian/Ubuntu/Mint
- Как установить Apache Subversion на Ubuntu 20.04 LTS
- Как установить Apache Subversion на Ubuntu 20.04 LTS
- Установите Apache Subversion на Ubuntu 20.04 LTS Focal Fossa
- Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие apt команды в терминале.
- Шаг 2. Установка веб-сервера Apache.
- Шаг 3. Установка Apache Subversion в Ubuntu 20.04.
- Шаг 4. Настройте Apache Subversion.
- Шаг 5. Создайте первый репозиторий SVN.
- Шаг 6. Создайте учетную запись и пароль для SVN.
- Шаг 7. Доступ к репозиторию в браузере.
- Subversion
- Содержание
- Subversion
- Установка
- Настройка сервера
- Создание хранилища Subversion
- Импортирование файлов
- Методы доступа
- Прямой доступ к хранилищу (file://)
- Доступ через протокол WebDAV (http://)
- Доступ по протоколу WebDAV с шифрованием SSL (https://)
- Доступ через собственный протокол (svn://)
- Доступ по собственному протоколу с SSL шифрованием (svn+ssh://)
- Установка и настройка svn сервера под linux
- /srv/svn/conf/apache.conf
- /srv/svn/conf/users-access-file
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» завершена.
Источник
Как установить Apache Subversion на Ubuntu 20.04 LTS
Как установить Apache Subversion на Ubuntu 20.04 LTS
В этом руководстве мы покажем вам, как установить Apache Subversion в Ubuntu 20.04 LTS. Для тех из вас, кто не знал, Subversion — это система контроля версий с открытым исходным кодом. Это помогает вам отслеживать коллекцию файлов и папок. Каждый раз, когда вы изменяете, добавляете или удаляете файл или папку, которыми вы управляете с помощью Subversion, вы фиксируете эти изменения в своем репозитории Subversion, что создает новую ревизию в вашем репозитории, отражающую эти изменения. Вы всегда можете вернуться, просмотреть и получить содержимое предыдущих редакций. SVN поддерживает несколько протоколов для доступа к сети: SVN, SVN + SSH, HTTP, HTTPS. Если вы находитесь за брандмауэром, использование Subversion на основе HTTP является преимуществом, поскольку трафик SVN будет проходить через брандмауэр без какого-либо дополнительного набора правил брандмауэра.
В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить ‘ sudo ‘ к командам для получения привилегий root. Я покажу вам пошаговую установку Subversion на Ubuntu 20.04 LTS (Focal Fossa). Вы можете следовать тем же инструкциям для Ubuntu 18.04, 16.04 и любого другого дистрибутива на основе Debian, такого как Linux Mint.
Установите Apache Subversion на Ubuntu 20.04 LTS Focal Fossa
Шаг 1. Во-первых, убедитесь, что все ваши системные пакеты обновлены, выполнив следующие apt команды в терминале.
Шаг 2. Установка веб-сервера Apache.
Перед запуском на вашем сервере должен быть установлен веб-сервер Apache. Если он не установлен, вы можете установить его с помощью следующей команды:
Шаг 3. Установка Apache Subversion в Ubuntu 20.04.
Выполните следующую команду, чтобы установить SVN и все зависимости, необходимые для SVN:
После установки пакета теперь разрешите модулям Apache2 запускать SVN для работы:
Шаг 4. Настройте Apache Subversion.
Пакет модуля Subversion Apache создает файл конфигурации. Вам просто нужно внести в него необходимые изменения. /etc/ apache2 / mods — enabled / dav_svn . conf
Шаг 5. Создайте первый репозиторий SVN.
Создайте свой первый репозиторий svn с именем first repo, вы можете использовать любое подходящее имя:
Шаг 6. Создайте учетную запись и пароль для SVN.
Следующие команды добавят пользователей для svn. Он предложит пользователю назначить пароль.
Затем перезапустите сервер Apache2 с помощью следующей команды:
Шаг 7. Доступ к репозиторию в браузере.
По умолчанию Subversion будет доступна через HTTP-порт 80. Откройте свой любимый браузер и перейдите к или, и вам будет предложено пройти аутентификацию. Используйте учетные данные для входа, созданные на шаге 6. Если вы используете брандмауэр, откройте порт 80, чтобы получить доступ к панели управления. http : //your-domain.com/svn/project/ http : //your-server-ip/svn/project/
Поздравляю! Вы успешно установили Apache SVN . Благодарим за использование этого руководства для установки Subversion в системе Ubuntu 20.04 LTS Focal Fossa. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный веб-сайт Apache Subversion .
Источник
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.
Источник
Установка и настройка 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 – имя пользователя
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 – имя пользователя
После ввода этой команды вам будет предложено ввести два раза пароль для вашего пользователя.
Источник