Изменения

Перейти к: навигация, поиск

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

314 байтов добавлено, 19:28, 28 ноября 2009
м
Git
=== Git ===
'''Git''': отлично (5-)! <tt>[http://git-svn.yhbt.net/ git-svn]</tt> встроен в git и умеет всё, что нужно: клонирование, синхронизация (<tt>fetch</tt>, <tt>pull</tt> или <tt>merge</tt>), фиксация изменений в Subversion-репозиториях (<tt>dcommit</tt>) и <tt>rebase</tt> работают с сохранением веток и меток, причём стандартная схема их именования <tt>trunk/branches/tags</tt> не является обязательной. Ветки SVN импортируются как [http://www.gitready.com/beginner/2009/03/09/remote-tracking-branches.html Remote Tracking Branches]. Можно начинать историю ветки в git’е не с сотворения миров, а с любого момента. Также <tt>git-svn</tt> поддерживает подключаемые внешние репозитории Subversion (т. н. [http://svnbook.red-bean.com/en/1.0/ch07s03.html Externals]). Граф ветвлений сохраняется, хоть и не так круто, как в Mercurial’е. В общем, можно сказать, что функционал полон. Как всегда с Git’ом, есть различные нетривиальности, что-то бывает нужно настроить (''гитара настроена? нас двое, на! играй, на!''), синтаксис не совмещён с обычными командами Git — то есть например для синхронизации копии с Subversion нужно сказать не <tt>git pull</tt>, а <tt>git svn fetch</tt>, посему всё-таки 5-, а не твёрдое 5успешно возобновляет операцию клонирование в случае её падения посредине.
Кстати, проходит (пока ещё проходит, продолжаясь уже пару дней) очень мощный тест — А теперь поговорим о неприятном: полное клонирование [http://svn.wikimedia.org/ SVN-репозитория WikimediaMediaWiki]занимает уже более 3 дней, хотя должно по логике занимать часов 6-8. Пару раз прерывалось изПричина в том, что Git время от времени лезет куда-за какихто в глубокую историю и начинает сканировать по новой уже просканированные ревизии. Посмотрим ещё, как это будет выглядеть в графе ревизий… Кроме того, как всегда с Git’ом, есть различные нетривиальности, что-то сетевых катаклизмовбывает нужно настроить (''гитара настроена? нас двое, но по на! играй, на!''), синтаксис не совмещён с обычными командами Git — то есть например для синхронизации копии с Subversion нужно сказать не <tt>git pull</tt>, а <tt>git svn fetch</tt> успешно возобновлялось.
=== Bazaar ===

Навигация