LINUX.ORG.RU

Mozilla переходит на распределенную систему управления версиями - и это Mercurial


0

0

В связи с изменением стиля разработки Mozilla 2, Mozilla Project была необходима новая система управления версиями взамен CVS. Выбор сделан - это система Mercurial, обошедшая ближайших конкурентов (Git и Bazaar-NG) за счет, соответственно, хорошей поддержки Windows и высокой скорости работы.

Подчеркивается, что принципы построения современных DVCS позволяют относительно безболезненно преходить с одной системы на другую, так что процедура выбора будет повторена через 9-12 месяцев с учетом будущего состояния оцениваемых систем и накопленного опыта эксплуатации.

>>> Подробности

Ответ на: комментарий от anonymous

> То что вы описали называется коротко "веткой".

Верно. Но в распределённой модели разработки ветки используются гораздо шире, чем в централизованной. Можно запросто создать новую ветку для какого-нибудь мелкого хака/эксперимента, а потом (выборочно) включить патчи оттуда в основное дерево. Или не включить. Ну вот захочется мне на выходных похачить Мозиллу, к примеру. Заводить для этого бранч в основном репозитории никто не согласится. В результате у тех, кто работает с CVS/SVN, как правило, со временем появляется с десяток рабочих копий проекта разной степени устарелости, в каждой их них есть какие-то независимые изменения, либо целый мешок патчей, которые уже через неделю отказываются ложиться на основное дерево без мата и напильника. И всё потому, что централизованные системы не умеют создавать локальные ветки. А децентрализованные - умеют, этим и отличаются.

Ну и да, все распределённые системы прекрасно годятся и для централизованной модели разработки. Bazaar даже умеет обычный checkout в стиле CVS/SVN, при котором создаётся обычная рабочая копия, а история изменений хранится на основном сервере. Естественно, многие операции при этом требуют доступа к серверу, а при коммите все изменения попадают сразу в главный репозиторий. Короче, можно считать, что централизованная система контроля версий - это вырожденный случай децентрализованной системы. :)

ero-sennin ★★
()
Ответ на: комментарий от anonymous

> Собсно из вашего описания никаких особых преимуществ меркуриала перед свн я лично не увидел.

А может, для _тебя_ их и нет. Например, ты всегда работаешь на отдельнной ветке, отлично помнишь информацию о merging'е, и никогда не делаешь ошибок, которые обнаруживаешь через 15 минут после коммита.

Нескромный вопрос - ты пользовался хоть какой-нибудь распределенной системой управления версиями?

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от ero-sennin

>ветки используются гораздо шире, чем в централизованной. Можно запросто создать новую ветку для какого-нибудь мелкого хака/эксперимента, а потом (выборочно) включить патчи оттуда в основное дерево. Или не включить

песец. На лоре безрамотность почёте.
Всё это совершенно без проблем белается в subversion. Учи матсачть студент.

>И всё потому, что централизованные системы не умеют создавать локальные ветки. А децентрализованные - умеют, этим и отличаются.
Вам, видимо совершенно не нужна. А нужно изучить документацию, особенно прежде чем блистать невежеством.

anonymous
()
Ответ на: комментарий от tailgunner

>Например, ты всегда работаешь на отдельнной ветке, отлично помнишь информацию о merging'е, и никогда не делаешь ошибок, которые обнаруживаешь через 15 минут после коммита.

Совершенно буз проблем можно откатить версию.

Объяски ж наконец, нахрена козе баян?
Зачем tailgunner-ам, непонимающим принципов работы системы контроля версий, распределнная ситема?

anonymous
()
Ответ на: комментарий от anonymous

> А нужно изучить документацию, особенно прежде чем блистать невежеством.

Ладно, сдаюсь. Что в SVN используется вместо clone, push и pull?

ero-sennin ★★
()
Ответ на: комментарий от anonymous

На пол-тона ниже, лана?

Бранч в централизованной системе будет виден всем. Как правило прибитие истории запрещено. Насколько я помню, это так. Кроме того нужно иметь постоянный доступ к серваку.

В распределенной системе, твоя личная история и история основной ветки (которая есть чистая условность) это разные вещи.

Кароче, свн сасет не вставая, верь мне детка.

avv
()
Ответ на: комментарий от avv

> Как правило прибитие истории запрещено. Насколько я помню, это так.

В смысле в SVN вроде это так. Во многих централизованных системах запрещено совсем, и на это есть причины. В перфорсе, например, можно только отредактировать комментарий с админскими полномочиями.

avv
()
Ответ на: комментарий от avv

>Кроме того нужно иметь постоянный доступ к серваку.
Буагага!
Ещё один дикий студент не знающий ничего кроме MS VSS....

Поверь, скрытие версий и правка истории, совершенно, не те вещи, изза которых затевают создание РАСПРЕДЕЛЁННОЙ системы.

А пососать, можешь у себя сам, так как отмороженному, использующему атомный микроскоп для забивания гводей, это очень подойдёт.

anonymous
()
Ответ на: комментарий от anonymous

> Объяски ж наконец, нахрена козе баян?

Козе баян не нужен. Она на баяне играть не сможет - у нее копыта вместо пальцев.

> непонимающим принципов работы системы контроля версий

Низачот по телепатии.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от tailgunner

>> непонимающим принципов работы системы контроля версий

>Низачот по телепатии.

Sure man, my apologies. Только вот что-то никто до сего момента так и не объяснил, для чего ему нужна именно РАСПРЕДЕЛЁННАЯ система.

ps
За удаление ревизий, нужно отрывать руки.

anonymous
()
Ответ на: комментарий от anonymous

> Только вот что-то никто до сего момента так и не объяснил, для чего ему нужна именно РАСПРЕДЕЛЁННАЯ система.

Мы старались. Я процитирую себя: "А может, для _тебя_ их и нет. Например, ты всегда работаешь на отдельнной ветке, отлично помнишь информацию о merging'е, и никогда не делаешь ошибок, которые обнаруживаешь через 15 минут после коммита. Нескромный вопрос - ты пользовался хоть какой-нибудь распределенной системой управления версиями?" Добавлю еще пару вопросов - у тебя всегда есть доступ к серверу? Какой системой ты пользуешься?

> За удаление ревизий, нужно отрывать руки.

Смотря каких ревизий. Ревизий, которые "опубликованы" - да, надо. Но удалить опубликованную ревизию в распределенной системе просто невозможно. А "частные" ревизии, со всей их грязью, ложными стартами, никому не интересными ошибками - можно и нужно удалять, объединять, чистить.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от tailgunner

Всё что перечислено выше, стандартные возможности практически любой системы контроля версий, кро пожалуй самых убогих, типа MS VSS.
Вы видимо не понимаете смысла слова РАСПРЕДЕЛЁННЫЙ, которое подчёркивал неоднократно. Ну да бог с вами. Хотя и советую просветиться.

ps
Из распеределённых, я много пользовался SVK и нeдолго BitKeeper. Для 99% процентов разработчиков РАСПРЕДЕЛЁННОСЬ только создаёт проблемы, так как они так же как вы не понимают, для чего её нужно использовать.

anonymous
()
Ответ на: комментарий от anonymous

> Вы видимо не понимаете смысла слова РАСПРЕДЕЛЁННЫЙ, которое подчёркивал неоднократно.

Повторный низачот по телепатии - вы отчислены.

> Хотя и советую просветиться.

И вам того же - вдвойне.

> Из распеределённых, я много пользовался SVK и нeдолго BitKeeper.

На самые интересные вопросы (о стиле вашей работы в централизованной VCS) вы не ответили.

tailgunner ★★★★★
() автор топика
Ответ на: комментарий от anonymous

> Из распеределённых, я много пользовался SVK и нeдолго BitKeeper. Для 99% процентов разработчиков РАСПРЕДЕЛЁННОСЬ только создаёт проблемы, так как они так же как вы не понимают, для чего её нужно использовать.

Отучаемся говорить за других.

ero-sennin ★★
()
Ответ на: комментарий от tailgunner

У меня нет "стиля работы с VCS" это вторично. Первичены архитектура и стиль программирования, стиль общения и т.д. Кроме того разные VCS подразумевают абсолютно разный "стиль". Это как языками программирования, после того как изучил 5-7 остальные, просто вариации на тему :)
Для себя лисно я пользуюсь Subversion, для работы - ~10 разных VCS за последние 15 лет.
>> Вы видимо не понимаете смысла слова РАСПРЕДЕЛЁННЫЙ, которое подчёркивал неоднократно.
>Повторный низачот по телепатии - вы отчислены.
Я и не претендовал на телепатию. Просто так и не услышал, зачем tailgunner-у РАСПРЕДЕЛЁННАЯ система...
Видимо у нас слищком различается мышление и я так и не смог объяснить свой вопрос или не смог понять ващ ответ... Видимо дальнейший разговор лищён смысла.
Ну да бог с ней этой темой. Пойду лучше посмотрю, что за спешиал сегодня на обед в тайском ресторане :)

anonymous
()
Ответ на: комментарий от ero-sennin

>Отучаемся говорить за других.
>ero-sennin
Это вы кому?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.