Возможности

· Хранение полной истории изменений отслеживаемых объектов (файлов, каталогов, символьных ссылок) в централизованном хранилище (репозитории), в том числе при изменении атрибутов («метаданных»), перемещении, переименовании и удалении.
Метаданные: каждый файл и каталог имеет собственный набор свойств, представленных в виде названия и значения. Вы можете создавать и сохранять любые необходимые пары названий свойств и их значений. Свойства файлов точно так же находятся под управлением версиями, как и их содержимое.

· Копирование объектов с разветвлением истории - при копировании в хранилище появляются два отдельных объекта с общей историей.

· Настоящая история версий: в Subversion можно заменить файл, помещённый под управление версиями, другим файлом с тем же именем, но совершенно иным содержанием, возможно никак не связанным со старым объектом, без наследования таким элементом всей истории изменений. Subversion делает возможным добавление, удаление, копирование и переименование как файлов, так и каталогов. При этом каждый вновь добавленный файл начинает жизнь с чистого листа, сохраняя собственную историю изменений.

· Поддержка переноса изменений между копиями объектов, в том числе полного слияния копий (в рабочей копии; без объединения истории).

· Поддержка ветвления:

- создания ветвей (копированием директорий) и работы с ними;

- слияние ветвей (переносом изменений).

· Поддержка меток (копированием директорий).

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

· Поддержка конкурентной (в том числе одновременной, с изоляцией транзакций) многопользовательской работы с хранилищем и, в большинстве случаев, автоматическим слиянием изменений различных разработчиков (в рабочей копии).

· Фиксации изменений в хранилище (в том числе многообъектные) организуются в виде атомарных транзакций: каждый набор изменений либо попадает в хранилище целиком, либо не попадает туда вовсе. Это позволяет разработчикам создавать и фиксировать изменения логически оправданными кусками, предотвращая тем самым проблемы, которые могут возникать в тех случаях, когда только часть необходимых изменений помещается в хранилище успешно.

· Сетевой обмен между сервером и клиентом предусматривает передачу только различий между рабочей копией и хранилищем.

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

· Различные варианты доступа к хранилищу, в том числе:

- непосредственный доступ на локальной файловой системе;

- имеется лёгкий самостоятельный сервер Subversion, который использует собственный протокол взаимодействия с клиентами и может легко туннелировать данные через SSH.

- Subversion может быть подключена к серверу HTTP Apache по протоколу WebDAV/DeltaV в виде модуля, что даёт ей огромное преимущество с точки зрения устойчивости работы и способности к взаимодействию, а также предоставляет прямой доступ к существующим возможностям этого сервера, включая установление личности, проверку прав доступа и сжатие информации при передаче.

· Два возможных внутренних формата хранилища: база данных или набор обычных файлов.

· Дружелюбность по отношению к разработчикам: Subversion реализована в виде набора динамических библиотек на языке C, API которых хорошо известен. Это делает Subversion чрезвычайно удобной для сопровождения системой, пригодной для взаимодействия с другими приложениями и языками программирования.

· И др.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: