Самый простой способ выполнить постепенное слияние в Mercurial - PullRequest
8 голосов
/ 14 апреля 2011

У меня есть проект, который когда-то разветвлялся.Со времени разделения в обеих ветвях было много коммитов, и я хочу объединить их в один.Простого объединения двух головок недостаточно, поскольку в нем слишком много конфликтов, а объединенная ветвь также нестабильна и нефункциональна.

Поэтому я хочу постепенно объединить две ветви.По возрастанию я имею в виду, что я беру кончик одной из ветвей и применяю изменения от другой по одной.Тестирование каждого слияния и продолжение, если все идет хорошо.

Какой самый простой способ сделать это с помощью Mercurial?

Ответы [ 2 ]

6 голосов
/ 14 апреля 2011

Вы сами в общих чертах изложили стратегию. Предположим, у вас есть две головы с именами headA и headB. hg up -r headB на одну из двух голов, затем несколько раз используйте hg merge -r X, где X - ревизия по другой линии разработки.

Вы можете использовать hg log -r 'ancestor(headA,headB)::headA', чтобы получить список подходящих кандидатов для этих слияний (в зависимости от общей топологии).

0 голосов
/ 14 апреля 2011

Вы можете использовать hg трансплантат , чтобы перенести определенные наборы изменений в ветвь.

...