Ни для кого ни секрет, что bzr не является самой-пресамой популярной DVCS по состоянию на 2011 год. По моим личным наблюдениям первое место уверенно держит git, я думаю не в последнюю очередь благодаря GitHub.
На блогах Microsoft опубликованы результаты опроса (через Twitter) предпочтений разработчиков Open Source проектов. Насколько эта выборка репрезентативна -- вопрос спорный. Однако она достаточно хорошо на качественном уровне показывает тенденции: git > hg > bzr.
Выбрав цифры только для тройки git/hg/bzr и беспощадно усредняя их можно прийти к такой средней температуре по больнице:
С моей точки зрения причины к этому могут быть следующие:
На блогах Microsoft опубликованы результаты опроса (через Twitter) предпочтений разработчиков Open Source проектов. Насколько эта выборка репрезентативна -- вопрос спорный. Однако она достаточно хорошо на качественном уровне показывает тенденции: git > hg > bzr.
Выбрав цифры только для тройки git/hg/bzr и беспощадно усредняя их можно прийти к такой средней температуре по больнице:
- git ~77%
- hg ~18%
- bzr < 5%
С моей точки зрения причины к этому могут быть следующие:
- вы и ваша команда более чем удовлетворены работой bzr и у вас нет причин менять проверенного коня. (По моему личному мнению каждая система из тройки имеет свои недостатки, с которыми придется мириться)
- Вы предпочитаете работать в централизованном стиле не теряя плюсов DVCS
- вам нравится GUI интерфейс к bzr -- QBzr и/или Bazaar Explorer, и вы не хотите их потерять при переходе на другую систему. Я не раз и не два получал отзывы от различных людей, даже от (увы) бывших пользователей bzr о том, что QBzr очень хорош. И я с этим согласен
- вам нравится использовать Launchpad для хостинга своих открытых проектов.
- вы используете bzr для работы с svn через bzr-svn. Плюшки в виде QBzr/Explorer прилагаются и здесь.
Согласен насчет "лучшая DVCS еще не написана".
ОтветитьУдалитьДумаю Git так рванул за счет его использования для разработки ядра и GitHub. Например, Basho перешли с BitBucket на GitHub, соотв. сменив Hg на Git и рапортовали об увеличении количества сторонних патчей.
А также не в последнюю очередь благодаря "рельсам" -- это весьма популярный веб-фреймворк и он тоже может задавать моду на git.
ОтветитьУдалитьУвеличение количества патчей -- здесь думаю заслуга GitHub. Процесс практически экспоненциальный с положительной обратной связью -- чем больше народа пробует GitHub тем больше патчей, тем больше народа интересуется git+GitHub и так по кругу.
Помимо удобства qbzr, Bazaar лучше всех работает с русским языком в Windows. Ни в Git, ни в Mercurial нельзя работать из командной строки, если есть имена файлов или комментарии к коммитам на русском.
ОтветитьУдалитьВы больше не планируете писать в этот блог? Я не так давно начал использовать для одного проекта «базар», и во многом очень доволен (в особенности интерфейсом QBzr).
ОтветитьУдалитьНо есть некоторые вещи, которые сходу непонятно, как правильно делать (мой опыт меркуриала не помог). В частности, в меркуриале я часто работаю с MQ (очередью патчей), причем как собственно с очередью, так и просто как со средством поправить ошибку в локальном коммите (не обязательно последнем).
Что касается непосредственно очередей, то мне очень нравится, как в меркуриале можно превратить несколько коммитов в очередь, внести исправления в несколько итераций, и потом превратить патчи обратно в коммиты.
Хотелось бы понять, какие средства есть в «базаре» для поддержки аналогичных процессов.
@Halega: думаю в hg не все так плохо с русским как в git, по крайней мере комментарии на русском должны работать. А вот имена файлов -- там однозначно есть проблемы (хотя и не сразу очевидные) из-за сознательного отказа поддерживать unicode.
ОтветитьУдалить@Helgi: в этот блог я еще собираюсь писать, но жизнь часто вносит свои коррективы, поэтому не буду ничего обещать.
ОтветитьУдалитьКонкретные вопросы лучше все-таки задавать в группе ru_bzr: http://groups.google.com/group/ru_bzr
Насчет MQ: в базаре нет прямой аналогии этому инструменту. Обычно вместо него используют либо плагин bzr-loom либо bzr-pipeline.
Кажется, в официальной документации к Mercurial сказано, что если хотите работать с русским языком в Windows, то единственная возможность - использовать TortoiseHG. Из командной строки нельзя, т.к. они не учитывают, что там кодировка cp866, и все комментарии, оставленные в cmd, оказываются битыми.
ОтветитьУдалитьМне нравится bzr из-за своей простоты. Лично я считаю, что Bazaar самая простая СКВ (rcs не в счет). Один каталог - одна ветка. Минимум различных команд и ключей. Мне нравится как просто он делает merge. Мне нравится команда 'bzr mv --auto'. Мне нравится qbzr. И эта совокупность "плюшек" сдерживает какое-либо стремление использовать git или hg. Зачем усложнять себе жизнь?
ОтветитьУдалить