Я думаю, что если вы поищите ответы «ветки вендора», то обнаружите, что они также охватывают ваш случай.
Основная задача заключается в том, чтобы убедиться, что любое изменение, которое вы хотите сохранить, - это репозиторий подмножеств. только наборы изменений из этого подмножества в качестве предков.Вот грубая картина:
subset:
[A]---[B]----[C]----[D]
superset1:
[A]---[B]----[C]----[D]---[E]---[F]
superset2:
[A]---[B]----[C]----[D]---[G]---[H]
С такими репозиториями любое изменение, которое вы вносите в подмножество , может быть легко hg pull
преобразовано в superset1 и / или superset2.Например, если вы добавите новую функцию в подмножество, ваши репозитории теперь могут выглядеть следующим образом:
subset:
[A]---[B]----[C]----[D]---[I]---[J]
superset1:
[A]---[B]----[C]----[D]---[E]---[F]
superset2:
[A]---[B]----[C]----[D]---[G]---[H]
, и после добавления их в суперсет1 и суперсет2 вы получите:
subset:
[A]---[B]----[C]----[D]---[I]---[J]
superset1:
[A]---[B]----[C]----[D]---[E]---[F]
\
--[I]---[J]
superset2:
[A]---[B]----[C]----[D]---[G]---[H]
\
--[I]---[J]
и тогда вы просто наберете hg merge
в superset1 и superset2, чтобы получить:
subset:
[A]---[B]----[C]----[D]---[I]---[J]
superset1:
[A]---[B]----[C]----[D]---[E]---[F]---[K]
\ /
--[I]---[J]--
superset2:
[A]---[B]----[C]----[D]---[G]---[H]---[L]
\ /
--[I]---[J]--
Перемещение изменений из superset1 в superset2 или из любого надмножества в подмножество намного менее чисто, поэтому внесите изменения вподмножество и вытащить / объединить его в суперсеты, и все готово.