Если вы читаете этот ответ, то можете забыть о других ion , упомянутый в этом ответе, и используйте команду fold
от evolve extension.
evolve
является продолжением меркуриального, что помогает нам иметь безопасную изменчивую историю, однако она все еще экспериментальна. Вы можете использовать его, клонируя его из своего repo и добавляя его в свой .hgrc, как это.
[extensions]
evolve = ~/evolve/hgext/evolve.py
Предполагая, что вы клонировали эволюцию репо в своем домашнем каталоге. Теперь вам хорошо идти. Вы также можете обратиться за помощью по телефону hg help fold
.
Fold Command
Вы говорите fold
в сквош/фолд линейную цепочку фиксаций, которая не нарушается. В том, что делает сгиб, он создает новый набор изменений, который содержит изменения из всех наборов изменений и отмечает все эти фиксации как устаревшие. У вас может быть более глубокий вид на docs.
Теперь предположим, что у вас есть следующая история.
a -> b -> c -> d -> e -> f -> g
Вы хотите сквош e
, f
и g
. Вы можете сделать
hg up g
hg fold -r e
Результат будет
a -> b -> c -> d -> h
где h
набор изменений, который содержит изменения от всех трех фиксаций e
, f
и g
.
Вы также можете сбрасывать набор изменений из середины истории, то есть не обязательно выбирать цепочку, содержащую подсказку. Предположим, вы хотите сбросить b
, c
и d
. Вы можете сделать
hg up d
hg fold -r b
hg evolve --all
Это приведет к
a -> i -> j
где i
является сложенный из b
ревизии, c
, d
и j
такая же, как h
ревизии. Evolve user guide является обязательным для чтения.
@ Ry4an: Спасибо, не заметил, что (разные слова). –
Да, мне понадобилось некоторое время, чтобы найти это, потому что ваш вопрос был более ясным. –