Подтвердить что ты не робот

Как Mercurial складывается против GIT и SVN?

С Филом Хааком и другими людьми, недавно чирикавшими о CodePlex переместился на поддержку Mercurial в качестве DVCS, я подумал, что это может стоить взгляда.

Как кто-то, кто в настоящее время использует SVN для личных проектов и TFS в The Office, как Mercurial сравнивается с точки зрения удобства использования, особенностей и каковы некоторые из лучших доступных услуг Mercurial?

4b9b3361

Ответ 1

Что касается сравнения с Git, Google недавно опубликовал интересное сравнение Git и Mercurial на основе их оценки: http://code.google.com/p/support/wiki/DVCSAnalysis

Ответ 2

По сравнению с SVN, для которого я недавно работал с вами после довольно долгого времени, Mercurial поражает. Это дало мне ощущение "Зачем кому-либо использовать SVN больше". SVN довольно хорош, но Mercurial действительно работает лучше.

Для личных проектов я бы без сомнения переключился на DVCS. Он делает все, что делает SVN, но лучше, и намного быстрее. "Кривая обучения" - это просто понимание некоторой терминологии.

В действительности разница между SVN и DVCS заключается в том, что у каждого есть полный рабочий репозиторий в своей системе. Если вы решили иметь "главный сервер", он точно такой же, как и у вас, кроме того, что он настроен на постоянную работу через сеть. Чтобы синхронизировать все это, вы отправляете/получаете (push/pull) изменения между этими репозиториями.

Ответ 3

О сравнении Mercurial с Git - см. этот вопрос SO: Git и Mercurial - Сравнить и Контрастмой длинный ответ).

О сравнении Mercurial с svn - см. этот вопрос SO: Что касается домашних проектов, может ли Mercurial или Git (или другие DVCS) предоставить больше преимуществ перед Subversion? ( теоретически этот вопрос ограничен в диапазоне, хотя я писал о Git vs Subversion в своем ответе).

Ответ 4

Одна вещь, не упомянутая в сравнении Google, заключалась в том, что Git выглядит намного быстрее. Mercurial кажется достаточно быстрым (с небольшими проектами, по крайней мере), но Git просто молниеносно, независимо от размера проекта.

Ответ 5

Это, наверное, только я, но я использую Mercurial в течение шести месяцев, после нескольких лет использования SVN исключительно, и по какой-то причине он просто не подходит для моей ментальной модели. Я точно знаю, что я делаю в SVN, и если что-то пойдет не так, я почти всегда знаю, как это исправить. Концептуально у меня нет проблем с Mercurial - например, у меня есть локальная копия репозитория, но на практике я всегда теряю вещи. Я думаю, что это может быть из-за того, что слияние в SVN довольно много, в то время как в Hg это обычный способ вещей. Я хочу больше контролировать свои слияния. В SVN всегда ясно, какие изменения предшествуют, но Mercurial, похоже, этого не имеет. Даже TortoiseHg, что довольно приятно визуально, похоже, не дает достаточных возможностей для того, чтобы увидеть, что именно сливается.

Ответ 6

SVN имеет большую поддержку сторонних инструментов, включая IDE и системы отслеживания ошибок и т.д., в том числе довольно приятный TortoiseSVN.

Большинство разработчиков использовали SVN в прошлом, поэтому получение новых разработчиков до скорости в вашей команде происходит быстрее с SVN.

Насколько важно для вас такое, только вы можете решить.