Может помочь расширение Mercurial Queues (mq).
Учитывая историю изменений, которая выглядит следующим образом:
@ changeset: 3:9dc681b56325
| summary: file4
|
o changeset: 2:6675b3f86aa7
| summary: file3
|
| o changeset: 1:4a3209ed5b2f
|/ summary: file2
|
o changeset: 0:6ab45ac3bd6d
summary: file1
Следующие команды перемещают набор изменений файла 'file4' в другую ветвь(заголовок 'file2'):
hg qimport -r 3 // convert revision 3 to a patch
hg qpop // remove it
hg update 1 // switch to the other branch head
hg qpush // push the change back
hg qfin -a // convert the applied patch back to a changeset
В результате:
@ changeset: 3:3faa754edb0b
| summary: file4
|
| o changeset: 2:6675b3f86aa7
| | summary: file3
| |
o | changeset: 1:4a3209ed5b2f
|/ summary: file2
|
o changeset: 0:6ab45ac3bd6d
summary: file1
Обратите внимание, что хэш набора изменений для версии 3 изменен, поскольку у набора изменений есть другой родительский элемент.Более поздние версии TortoiseHg также поддерживают расширение MQ.