Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
AlgStr / Библиотека / Разные источники / Контроль версий (Вики).doc
Скачиваний:
30
Добавлен:
23.03.2015
Размер:
549.38 Кб
Скачать

 

Subversion — Википедия

Subversion[1](также известная как «SVN»[2]) —свободнаяцентрализованнаясистема управления версиями, официально выпущенная в2004 годукомпаниейCollabNetInc.

Цель проекта — заменить[3][4]собой распространенную на тот момент системуConcurrent Versions System(CVS), которая ныне считается устаревшей[5][6][7]. Subversion реализует все основные функции CVS и свободна от ряда недостатков последней.

В настоящее время Subversion используется многими сообществами разработчиков открытого программного обеспечения(в том числе сообществами, ранее использовавшимиCVS). В их числе такие известные проекты, какApache,GCC,Free Pascal,Python,Ruby,Mono,FreeBSD,Haiku,AROSиMediaWiki. Subversion также широко используется в закрытых проектах и корпоративной сфере.ХостингSubversion, в том числе для проектов с открытым кодом, также предоставляют популярные хостинг-проектыSourceForge.net,Tigris.org,Google CodeиBountySource.

В 2007 годунезависимая компания Forrester Research, сравнивая преимущества и недостатки различных систем, оценила Subversion как«единоличного лидера в категории Standalone Software Configuration Management (SCM) и сильного участника в категории Software Configuration and Change Management (SCCM)».[8]

По данным статистики использования пакетов Linux-дистрибутивовDebian[9]иUbuntu[10], количество активных пользователей Subversion примерно такое же, как уGit, и превосходит аналогичный показатель дляCVS,MercurialиBazaar(по состоянию на июнь2011 года).

В качестве официальной документации позиционируется[11]книга издательстваO'Reilly Media, выложенная в свободный доступ на сайтеhttp://svnbook.red-bean.com/и дописываемая авторами по мере выхода новых версий SVN. Там же публикуются её переводы на ряд языков, в том числе русский, но при том, что англоязычные версии книги сейчас описывают версии 1.6 и 1.5, на русском языке имеются лишь книги, описывающие версии до 1.4 включительно.

Разработка Subversion была начата в 2000 годупо инициативе и при финансовой поддержке CollabNet Inc. Инициаторы проекта хотели создатьсвободнуюсистему управления версиями, в основном похожую на CVS, нолишённую её ошибок и неудобств. В то время не существовало лучших программ этого класса со свободной лицензией, CVS была стандартом де-факто среди разработчиков свободного программного обеспечения. Выбрав её за основу, разработчики Subversion надеялись упростить разработку за счёт использования уже проверенных концепций и в то же время облегчить переход на новую систему многочисленным пользователям CVS.[12]

Основные события истории развития Subversion.

  • 31 августа2001 годакоманда разработчиков перешла с CVS на Subversion для управления собственным исходным кодом: Subversion стала «самодостаточной».

  • 23 февраля2004 годавышелрелиз1.0.0[13]. К этому времени Subversion уже использовалась примерно на 1400 серверах с открытым доступом.[14]

  • 29 сентября2004 годапоявился релиз 1.1.0. Среди основных нововведений — новый формат хранилища на основе обычных файлов (FSFS), в дополнение к существовавшему ранее (с использованиемBerkeley DB).[15]

  • 21 мая2005 годавышел релиз 1.2.0, в котором добавлена возможность блокировки файлов,[16]что позволило улучшить поддержку клиентов WebDAV/DeltaV, в том числе, реализовать автоматическое создание новых версий при редактировании файлов с помощью таких клиентов. Начиная с этого релиза Subversion по умолчанию использует FSFS для новых хранилищ.

  • 30 декабря2005 годавышел релиз 1.3.0.[17]Основными изменениями являются возможность устанавливать права доступа к директориям при использовании svnserve, дополнительные возможности команд, а также множество улучшений для разработчиков.

  • 10 сентября2006 годавышел релиз 1.4.0.[18]Он поддерживает работу с BerkeleyDB 4.4 и может использовать её функции самовосстановления. Ранее при сбоях Subversion хранилище, использующее BerkeleyDB, могло остаться в «заклиненном» состоянии и требовалось вмешательство администратора для восстановления работы системы (при использовании FSFS этой проблемы нет).

  • 19 июня2008 годавышел релиз 1.5.0[19], в нём сделано множество улучшений, самым значительным из которых является базовая поддержка отслеживания слияний (англ.merge tracking). Эта возможность делает процесс слияния пакетов в Subversion более простым и надёжным.

  • 20 марта2009 годавышел релиз 1.6.0.[20]Улучшения поддержкиsvn:externals, обнаружение «конфликтов деревьев» (англ.tree conflict), улучшение эффективности хранения данных в репозитории и другие внесённые изменения.

  • В феврале 2010 годапроект Subversion был официально переведён под управлениеApache Software Foundation(ASF)[21]. Президент Subversion Corporation и директорOpen Sourceв WANdisco выступил с видеообращением, в котором с энтузиазмом пообещал всем, что переход Subversion к ASF будет лишь способствовать более активному развитию проекта.[22]

  • 11 октября2011 годасостоялся релиз 1.7[23]. Основные улучшения: теперь только одна папка.svnв корне рабочей копии; ускорена работа по HTTP; добавлена утилитаsvnrdump; новая командаsvn patch.