- Работаем с SVN — основные команды
- Subversion
- Содержание
- Subversion
- Установка
- Настройка сервера
- Создание хранилища Subversion
- Импортирование файлов
- Методы доступа
- Прямой доступ к хранилищу (file://)
- Доступ через протокол WebDAV (http://)
- Доступ по протоколу WebDAV с шифрованием SSL (https://)
- Доступ через собственный протокол (svn://)
- Доступ по собственному протоколу с SSL шифрованием (svn+ssh://)
- Начало работы с SVN на Linux
- Subversion
- Содержание
- Subversion
- Установка
- Настройка сервера
- Создание хранилища Subversion
- Импортирование файлов
- Методы доступа
- Прямой доступ к хранилищу (file://)
- Доступ через протокол WebDAV (http://)
- Доступ по протоколу WebDAV с шифрованием SSL (https://)
- Доступ через собственный протокол (svn://)
- Доступ по собственному протоколу с SSL шифрованием (svn+ssh://)
Работаем с SVN — основные команды
Мануалов и описаний команд SVN сейчас в интернете великое множество. Внесу и я свои пять копеек в эту тему.
Про установку и настройку SVN я уже писал, но что происходит потом? Да, собственно, ничего сложного.
Сначала администратор SVN заводит новый проект на сервере, настраивает доступ и раздаёт логины-пароли участникам проекта. После этого происходит важный и ответственный момент — первоначальный импорт файлов в репозиторий. Для этого нужно перейти в каталог проекта и выполнить команду svn import. В моём случае, это делается так:
cd /home/alexey/projects/project_name/
svn import -m «Initial upload» ––username alexey ./ svn://svn.local/var/svn/project_name/trunk/
После этого из каталога /home/alexey/projects/project_name/ можно всё удалить и создать рабочую копию проекта. Делается это командой svn checkout:
svn checkout ––username alexey svn://svn.local/var/svn/project_name/trunk/ ./
А дальше всё как в учебнике. Поработали, внесли изменения в файлы, обновили их в репозитории командой svn commit. При этом не забываем сначала проверить состояние репозитория, вдруг кто-то ещё вносил изменения в файлы: svn update. Добавить новые файлы в репозиторий — svn add filename. Удалить файлы из репозитория — svn del filename. Если вы запортачили файл в своей рабочей копии и хотите вытащить его из репозитория — svn revert filename.
Источник
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
Во- первых, установим 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’ перед внесением изменений в файлы, доступные в вашей рабочей копии. После этого, вносите изменения в файлы, а затем зафиксируйте изменения в хранилище после того, как только файлы будут изменены.
Для того чтобы применить различия между двумя источниками на пути в рабочей копии, используйте:
Для того, чтобы увидеть различия между этими двумя конкретными версиями файла, используйте:
Источник
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.
Источник