[tldf закладки неюзабельное говно]
Вот всем меркуриал хорош, в отличие от наркоманского гита - кроме веток. Потому что ветка в гите - это как сейва в игре. Посейвил текущий момент в истории, и в любой момент можешь к нему вернуться, просто и гениально. Меркуриал-овцы любят повторять: «Так у нас есть закладки!!!» Да нифига.
Вот хотим мы с помощью закладок сделать feature branch. Создаём закладку, пишем код, коммитим, радуемся:
$ hg update default # переходим в самую последнюю ревизию основной ветки
$ hg bookmark blackjack-and-hookers # это будет наш feature branch
$ vim src/hookers.c
$ hg ci -Am 'Add hookers'
$ vim src/blackjack.c
$ hg ci -Am 'Add blackjack' # почти готово, ништяк
И тут нам понадобилось вернуться в основную ветку. Што? Где она?
hg update default
- ничего не происходит!$ hg update default
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
Потому что меркуриал всё это вермя тихо складывал наши изменения прямо в основную ветку, и она тихо ехала вслед за нашими коммитами, и теперь указывает туда же, куда и наша feature branch:
$ hg identify --rev default
aab62191150e tip blackjack-and-hookers
$ hg identify --rev blackjack-and-hookers
aab62191150e tip blackjack-and-hookers
Указатель на реальную «основную ветку», от которой мы отпочковали feature branch, нигде не сохранился. В меркуриале ведь никогда ничего не теряется, в отличие от гита... wait... ОХ БЛ
Потому что закладки в меркуриале - это не бранчи, как в гите. Это непонятно что, прикрученное сбоку синей изолентой. Меркуриалу пофигу, что для нас это feature branch - для него мы по-прежнему в основной ветке. Меркуриал как бы говорит: «Надо тебе - сам следи за своей основной веткой. Создай ручками закладку default и ручками её переставляй. Можешь на бумажке записывать номера ревизий, это даже проще. И не забывай отныне вместо push делать push -B default, а то твой feature branch тихо и незаметно вольётся в основную ветку. Ах, так его не надо было вливать? Тогда ты должен был установить на ревизии из feature branch фазу secret - у нас же не гит-наркомания, у нас же всё просто! Ах, тебе всё-таки надо куда-то пушить feature branch, но не в основной репозиторий? А мне тогда пофиг, лол. Тебе надо ты и пердолься, как хочешь.»
Вопрос к меркуриал-овцам: вы реально этими закладками пользуетесь для feature бранчей? Или их в меркуриале сделали только для отмазы, чтобы гит-фанбоям отвечать «у нас тоже есть»? Сколько ещё лет потребуется, чтобы довести закладки до юзабельного вида? Шёл 2015 год. Доля hg-юзеров неуклонно снижалась. Медленно приближался конец поддержки Python2... Это отчаяние?