Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы к экзамену.docx
Скачиваний:
293
Добавлен:
28.06.2014
Размер:
602 Кб
Скачать
☆
  1. Системы управления версиями. Svn. Основные возможности.

Разработка Subversion была начата в 2000 году как попытка создать свободную систему управления версиями, в основном похожую на CVS, но свободную от ее ошибок и неудобств. 31 августа 2001 года, спустя четырнадцать месяцев с начала работы, команда разработчиков перешла с CVS на Subversion для управления версиями собственного исходного кода — Subversion стала «самодостаточной».

Возможности

  • Реализовано большинство возможностей CVS.

  • Отслеживается история файлов, директорий и метаданных файлов, в том числе при переименовании и копировании.

  • Публикации изменений атомарны.

  • Возможность организации доступа к хранилищу Subversion через Apache по протоколу WebDAV/DeltaV.

  • Возможность установки автономного сервера Subversion с доступом по собственному протоколу.

  • «Дешёвые» операции создания ветвей и меток (требуется небольшое фиксированное количество временных и дисковых ресурсов).

  • Многоуровневая архитектура библиотек, изначально рассчитанная на клиент-серверную модель.

  • Клиент-серверный протокол пересылает по сети только разницу между объектами, когда это возможно.

  • Затраты ресурсов пропорциональны размеру изменений, а не размеру данных, которые затронуты изменениями.

  • Два возможных внутренних формата репозитория: база данных или простой файл.

  • Версионированные символьные ссылки (только в рабочих копиях под UNIX-системами).

  • Одинаково эффективная работа и с текстовыми, и с двоичными файлами.

  • Вывод клиента командной строки одинаково удобен и для чтения, и для разбора программами.

  • Частичная локализация сообщений (используются настройки локали).

  • Библиотеки для языков PHP, Python, Perl, Java.

  • Возможность зеркалирования репозитория.

  1. Системы управления версиями. Svn. Архитектура. Компоненты.

Общий взгляд на устройство Subversion показан на рисунке.

На одной стороне схемы изображено хранилище Subversion, в котором хранится информация с версиями. На противоположной стороне показана программа-клиент Subversion, которая управляет локальными отражениями различных фрагментов этих данных (также называемыми «рабочими копиями»). Между этими сторонами проложены различные маршруты, проходящие через разные слои доступа к хранилищу. Некоторые из этих маршрутов используют компьютерные сети и сетевые сервера, чтобы достичь хранилища, в то время как другие маршруты в сети не нуждаются и ведут к хранилищу напрямую.

Компоненты Subversion

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

svn

CLI-клиент.

svnversion

Программа показывающая состояние (в пределах ревизий существующих элементов) рабочей копии.

svnlook

Инструмент для контроля Subversion хранилища.

svnadmin

Инструмент для создания, настройки или восстановления Subversion хранилища.

svndumpfilter

Программа для фильтрации дамповых потоков Subversion хранилища.

mod_dav_svn

Подключаемый модуль для HTTP сервера Apache, использующийся для предоставления сетевого доступа к вашему хранилищу.

svnserve

Собственный отдельный сервер, запускается как процесс-демон и доступен посредством SSH; еще один способ для предоставления сетевого доступа к хранилищу.