|
Персональные инструменты |
|||
|
DVCSМатериал из CustisWikiDVCS — распределённые системы контроля версий (Distributed/Decentralized Version Control System). Вместо «распределённых» можно также использовать термин «децентрализованные», а вместо «системы контроля версий» — «системы управления версиями» (СУВ). СодержаниеОтличительные особенностиОсновная идея — вместо необходимости наличия центрального репозитория, хранящего историю изменений (как, например, в CVS и Subversion), копия репозитория содержится в каждой рабочей копии, и поэтому разработчики могут обмениваться изменениями напрямую. В связи с этим сразу возникает необходимость удобной поддержки слияний, так как потенциально возникает сильное ветвление, и с ним нужно что-то делать. Это удобство успешно предоставляется существующими системами, в отличие от, например, Subversion'а (являющегося централизованной СУВ), в которой ветвиться достаточно просто и удобно, а вот сливать изменения — тяжело. Первое отличие, замечаемое при переходе на DVCS с централизованных систем — команды «update» и «commit» извлекают/фиксируют изменения не из центрального репозитория, а из локального, и появляется ещё две команды — «pull» и «push», предназначенные для приёма/передачи изменений из удалённых репозиториев. Ещё одно важное отличие — DVCS понимают репозиторий как «цельный проект», и при управлении версиями не делят его на отдельные файлы и каталоги — то есть, если кто-то сделал изменение в другом файле параллельно с вами — ваша правка всё равно создаст отдельную ветку, и их придётся объединять. Хотя объединение, конечно, пройдёт полностью автоматически и безболезненно. Поэтому обычно не рекомендуется поддерживать несколько проектов в одном DVCS-репозитории. По сути, никто не мешает использовать DVCS в «централизованном стиле», имея сервер и постоянно синхронизируя локальный репозиторий с ним, но при этом всё равно возможен и прямой обмен историей между разными разработчиками. Интересный факт: все три наиболее популярные DVCS (Git, Mercurial и Bazaar) поддерживают работу с Subversion-репозиториями, причём делают это быстрее, чем сам клиент Subversion, и быстрее всех работает Bazaar. Известные DVCSНиже перечислены наиболее известные на данный момент свободные DVCS. Самые популярные и активно развиваемые сейчас — в первую очередь, Git, Mercurial и Bazaar, их активно догоняющий. GNU Arch не развивается, хотя поддерживается. Git
Интересные факты:
Mercurial
Интересные факты:
Bazaar
Интересные факты:
Darcs
Интересные факты:
Monotone
Интересные факты:
GNU Arch
Интересные факты:
Ссылки
Любые правки этой статьи будут перезаписаны при следующем сеансе репликации. Если у вас есть серьезное замечание по тексту статьи, запишите его в раздел «discussion». Репликация: База Знаний «Заказных Информ Систем» → «DVCS» |
||