hg convert --branchmap
позволяет перемещать все изменения в ветке на другую ветвь. В ветке с несколькими головами (например, один путь ведет к «закрытой ветке»), как мне переместить некоторые изменения в другую ветку, оставив других без изменений?Как переместить некоторые изменения из одной ветки в другую?
1
A
ответ
0
Согласно Pierre-Yves David
Вы должны быть в состоянии достичь этого с помощью "histedit". Используйте действие «изменить» в первых наборах изменений и настройте имя филиала перед фиксацией.
Так, например, сказать, что мы имеем:
@ changeset: 3:acd042300874
| tag: tip
| user: [email protected]
| date: Tue Sep 27 11:22:33 2016 -0400
| summary: commit4
|
o changeset: 2:6cd4bf5a3e25
| parent: 0:7f1fbf9d8623
| user: [email protected]
| date: Tue Sep 27 11:22:33 2016 -0400
| summary: commit3
|
| o changeset: 1:5cf7adbb92ea
|/ user: [email protected]
| date: Tue Sep 27 11:22:32 2016 -0400
| summary: commit2
|
o changeset: 0:7f1fbf9d8623
user: [email protected]
date: Tue Sep 27 11:22:32 2016 -0400
summary: commit1
и мы хотим двигаться ПЕРЕСМОТРЫ 2, 3 на другую ветку, мы бы сделать следующее:
- обновление рт.ст. 3
- hg histedit 2
- Изменение обеих ревизий с "pick" на "редактировать"
- филиала рт.ст. «новый филиал»
- рт.ст. совершить -й «старое сообщение коммита для rev2»
- рт.ст. histedit --continue
- рт.ст. совершить -й «старое сообщение коммита для rev3»
- рт.ст. histedit - -Продолжить
0
Используйте комбинацию branchmap
и splicemap
вариантов hg convert
. Возможно, более чем на один шаг, в зависимости от того, что вам нужно делать.
Да, это то, что я сделал, пока не услышал ответ [Pierre's] (http://stackoverflow.com/a/39728971/14731). – Gili