На какой голове расположить перед выполнением слияния?

голова, которую я предпочитаю при слиянии?

Я имею в виду следующее: у меня, скажем, старая версия 1000. Тем временем я сделал 234 коммита и у меня версия 1234. Теперь мне нужно вернуться к версии Rev 1000, чтобы исправить ошибку для клиента. Я фиксирую исправление, передаю релиз заказчику и получаю фиксацию 1235.

Это всего лишь крошечное изменение: затрагивает только один файл.

На данный момент у меня две головы: 1235 (родитель - 1000) и 1234. Их общий (grand-grand -...- parent) - 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 ) после слияния двух одинаковых головок, но вывод of hg status , похоже, зависит от моего нынешнего руководителя.

Является ли это нормальным поведением, и, если да, есть ли одна голова, которую можно «предпочесть» другой?

Приведут ли обе операции к одному и тому же состоянию репозитория / исходного кода в конце?

5
задан Martin Geisler 18 January 2012 в 06:37
поделиться