Почему печь основана на ртутном, а не на других (D) VCS
-
19-09-2019 - |
Вопрос
Какова была причина выбора Mercurial в качестве основы FogCreek Печь для обжига, система управления версиями с тесно интегрированным обзором кода и интеграцией FogBugz?
Почему Mercurial, а не другая (распределенная) система контроля версий, такая как Bazaar, Git или Monotone, или создание собственной системы контроля версий, такой Ископаемое (управление конфигурацией распределенного программного обеспечения, включая отслеживание ошибок и wiki) сделал?
Какие особенности заставили FogCreek выбрать Mercurial в качестве печного двигателя?
Решение
Вот ответ от одного из разработчиков печи.
- Это обеспечивает реальное ветвление.
- Он прост в использовании.
- Поддержка Windows очень хорошая.
- Это быстро.
- Это мощно.
- Это легко расширяемый файл.
Ознакомьтесь с полной информацией здесь.Они объяснились довольно подробно.
Другие советы
Оригинальный ответ (ноябрь.2009, у GitHub всего 1 год, у Git только 4)
Я действительно не знаю, но я бы рискнул "улучшить поддержку Windows", поскольку Windows потенциально является основной платформой для большей части их клиентской базы.
Git по-прежнему слишком похож на продукт "unix / linux" с "обнадеживающей" поддержкой Windows через mSysGit.
Просто прочтите тон некоторых из вестник MSysGitHerald статьи, подобные девятый по счету:
В течение очень долгого времени msysGit продвигалась вперед группой, сформированной из Ханнеса, Штеффена, Себастьяна Шуберта и меня [Йоханнеса Шинделина].На каком-то этапе я так расстроился, что вообще перестал работать над msysGit.Причина проста:это было уже не так весело.Слишком много людей просили об исправлениях или улучшениях, и ни один из них не предложил внести свой вклад.Поскольку я не сторонник Windows (будучи счастливым пользователем Linux с 1994 года), работа над mSysGit не принесла мне достаточной пользы, чтобы продолжать.Поэтому я остановился.
Но за это время все изменилось.
Мы получили пожертвования от ...
Это не внушает большого доверия, когда дело доходит до того, чтобы передать этот инструмент вашему ИТ-боссу.Я очень доволен Git для личного использования и очень благодарен за усердную работу всех участников mSysGit, но в большой компании мне было бы трудно сделать Git инструментом DVCS по умолчанию, принятым нашими разработчиками Windows.
Как из-за кривой обучения, так и главным образом потому, что уровень поддержки еще не достигнут.
Это всего лишь личное мнение, и если у вас есть другой опыт успешного развертывания Git, у вас будет больше возможностей.
Mercurial, являющийся ближайшим DVCS к Git и основанный на переносимых скриптах Python (а не sh-скриптах на базе Linux / unix), может быть прагматичным выбором.
Обновление 2018 года, семь лет спустя:да, поддержка Windows для Git теперь стала реальностью.
И у Microsoft есть свои весь Кодовая база Windows в один (гигантский) Репозиторий Git:Видишь "Самый большой Git-репозиторий на планете":3,5 Млн файлов, 300 ГБ, 4000 инженеров, производящих 1760 ежедневных “лабораторных сборок” в 440 филиалах в дополнение к тысячам сборок для проверки запросов на извлечение.
Но это с добавлением GVFS (виртуальная файловая система Git), который позволяет динамически загружать только те части, которые вам нужны, в зависимости от того, что вы используете.
Это не все же в Git native, хотя его интеграция началась в декабре прошлого года.2017, с внедрением узкого/частичного клонирования.
Kiln также рекламирует поддержку Git:
Печь для обжига, наше лучшее в своем классе решение для хостинга DVCS, поддерживает Git, а также Mercurial!Гитхаб - это здорово.FogBugz - это здорово.Что могло бы быть еще лучше?Как насчет их интеграции!FogBugz может получать уведомления с помощью Веб-перехватов GitHub всякий раз, когда во входящем комментарии к набору изменений упоминается случай.
Когда я посмотрел на систему DVCS Мне нравится Переменчивый, потому что.
- Разработчики Mercurial, похоже, заботятся о пользователях Microsoft Windows.
- Разработчики Mercurial не считают пользователей Microsoft Windows пользователями Unix, которые вынуждены использовать Windows.
- В отличие от многих разработчиков с открытым исходным кодом, разработчики Mercurial, похоже, не ненавидят Microsoft за то, что она зарабатывает деньги.
Может быть разработчики Печи думали о том же...
(Все основные системы DVCS достаточно хороши, в противном случае другие факторы сыграли бы большую роль)
Я не могу говорить за FogCreek, но я знаю, что когда я выбирал, какие DVCS использовать, многие люди отмечали, что git плохо работает в Windows (если только он не запущен в cygwin).Поскольку FogBugz предназначен для запуска либо в системах Windows, либо в Linux (насколько я понимаю - я сам не пользователь), наличие дополнительного уровня (cygwin) для запуска git, возможно, было определяющим фактором.Я мало что знаю о Bazaar или Monotone, поэтому не могу предложить там никаких отзывов.
Я думаю, что проблема hg противgit - это отвлекающий маневр, так как проблема поддержки операционной системы сама по себе является существенным отличием.Реальный вопрос заключается в том, почему hg, а не bzr, поскольку эти два очень похожи, и сами разработчики hg считают bzr своей реальной конкуренцией, и наоборот.Sun провела обширную оценку обоих, когда дело дошло до выбора DVCS для OpenSolaris и OpenJDK.Хотелось бы знать, какой процесс использовался для сбора ртути в FogCreek.Все, что мы получили до сих пор в виде ответов (помимо проблемы с поддержкой операционной системы), - это общие положения.
Так что теперь они добавляют еще и git:
Одна из самых больших новых функций - Kiln Harmony, которая позволяет вам работать с репозиториями Kiln с помощью Git или Mercurial.Таким образом, вы можете вносить изменения в репозиторий Kiln с помощью Git, а затем извлекать их с помощью Mercurial.Это означает, что вам никогда не придется решать, хотите ли вы использовать Git или Mercurial.