Изменения

Сравнение DVCS - несколько задач

785 байтов добавлено, 21:04, 19 ноября 2009
Схема управления рабочими копиями
С '''Git''''ом ситуация почти такая же, как и с Mercurial’ом. 1 рабочая копия, 1 репозиторий. Хотя при клонировании данные репозитория можно и не копировать, задавая опцию <tt>--shared</tt>, но это скорее похоже на Bazaar’овские [http://doc.bazaar-vcs.org/latest/en/user-guide/stacked.html Stacked Branches], чем на Lightweight Checkout. Идея лёгких рабочих копий (или «идея .gitlink») [http://git.or.cz/gitwiki/SoC2007Ideas высказана для GSoC-2007], однако пока так и не реализована.
Управление ветками в '''Bazaar''' вначале было гораздо хуже всех, а потом стало лучше всех (по возможностям). Вначале он говорил нам: на 1 ветку ровно 1 рабочая копия и ровно 1 репозиторий. А когда исправился, стало можно создать Однако потом появилось уникальное: <tt>checkout</tt>'ы и [http://bazaar-vcs.org/SharedRepositoryTutorial Shared Repository] с опцией , имеющий опцию <tt>--no-trees</tt>. Таким образом, а потом стало возможно иметь сколько угодно репозиториев и сколько захочется угодно рабочих копий <tt>checkout</tt>'ами. Переключить В Git и Mercurial этого нет. Переключать легковесную рабочую копию с ветки на ветку также можно — Bazaar тоже умеет — командой <tt>switch</tt> (, для этого также нужно переключения ветки её надо превратить ветку в checkout легковесную рабочую копию командой <tt>bind</tt>).
Тем Однако есть и неудобства: Bazaar не менееумеет переключиться на произвольную ревизию и как, лично например, Mercurial, по коммиту автоматически ответвиться в сторону. В Bazaar можно только сделать <tt>revert</tt> («откат») к определённой версии. Рабочие файлы при этом изменятся, а «состояние» рабочей копии — нет. Лично я , по всей видимости, вообще против базаара, не . Не по причине каких-либо ''недоработок'', а по причине ''идеи mainline''; того, что директории — это не контейнеры веток, а сами ветки; показа отдельно «своих» и «чужих» ревизий в каждой ветке; и '''изменения истории''' (плясок ревизий) при объединениях. ИМХО — лучше показывать граф ревизий и ничего никуда не переставлять, только добавлять рёбра. Особенно учитывая, что базаар в нутрях всё равно работает через графы с графами (а как ещё?). А ещё он не умеет показывать консольные ASCII-псевдографические графы ревизий.
[[Категория:Разработка]]