Есть ли голова, которая предпочитает делать слияние?Какая голова накладывается на перед слиянием?
Что я имею в виду: у меня есть, скажем, старый rev 1000. Между тем я сделал 234 коммитов, и я на rev 1234. Теперь мне нужно вернуться к rev 1000, чтобы реализовать исправление для клиента , Я фиксирую исправление, даю освобождение клиенту и получаю фиксацию 1235.
Это всего лишь незначительное изменение: затрагивает только один файл.
На данный момент у меня есть две голов: 1235 (чей родитель 1000) и 1234. Их общие (гран-гранд -...- родительский) 1000.
Если я выдать hg merge
сопровождаемые hg status
, я получаю гигантский список изменений.
Однако, если я первый hg update -C 1234
, за которым следует hg merge
и hg status
, то я вижу только мое уникальное изменение (если я не ошибаюсь, как к тому, что только что произошло).
В принципе, как это сделать:
hg update -C 1234
hg merge # (merging 1234 and 1235, my two only heads)
hg status
дает другой статус, чем это:
hg update -C 1235
hg merge # (merging 1234 and 1235, my two only heads)
hg status
Так в основном, я спрашиваю статус (hg status
) после слияния двух одинаковых голов, но выход hg status
, похоже, зависит от того, в какой я сейчас нахожусь.
Является ли это нормальным поведением и, если да, есть одна голова, чтобы «отдать предпочтение» другому?
Выполняют ли оба действия результат в том же состоянии репозитория/исходного кода в конце?
+1, спасибо большое. Я действительно вернулся к основной линии разработки и объединил исправление. Но я был очень удивлен: * статус «hg» * (я всегда запускаю * hg sta * перед выполнением фиксации) меня испугало ... Поэтому я как бы «вывел», что, вероятно, лучше было обновиться до основной линии и сливаются оттуда. Но все же я хотел быть уверенным, что ничего не вижу. Как-то я всегда был уверен, что слияние всегда будет на 100% идентичным. Я не знаю, откуда у меня это получилось: это казалось мне как-то логичным ... Но я ошибся :) Спасибо за ссылку, время, чтобы читать! – NoozNooz42