Вы действительно близки, и вам не нужно прибегать к пересадке (гадость) или черри в целом. Выключение premerge - это первый шаг, а затем просто удалите файлы, которые вам не нужны, в основной ветке после слияния, но перед фиксацией. Вам нужно будет сделать это только один раз.
Вот настройка:
o changeset: 3:343d531512a3
| branch: solar
| tag: tip
| parent: 1:cb26642f8db5
| user: Ry4an Brase <ry4an@msi.umn.edu>
| date: Wed Mar 10 11:16:48 2010 -0600
| files: afile
| description:
| solar-change
|
|
| @ changeset: 2:c5d14e34db07
| | parent: 0:56465175b2fc
| | user: Ry4an Brase <ry4an@msi.umn.edu>
| | date: Wed Mar 10 11:05:44 2010 -0600
| | files: other-main-file
| | description:
| | moremain
| |
| |
o | changeset: 1:cb26642f8db5
|/ branch: solar
| user: Ry4an Brase <ry4an@msi.umn.edu>
| date: Wed Mar 10 11:04:32 2010 -0600
| files: solar-only
| description:
| solar-initial
|
|
o changeset: 0:56465175b2fc
user: Ry4an Brase <ry4an@msi.umn.edu>
date: Wed Mar 10 11:04:14 2010 -0600
files: afile
description:
initial
Вы можете видеть, что changeset 1 добавляет файл к солнечной ветке - файл, который нам не нужен по умолчанию. В то время как changeset 3 настраивает файл, который также существует в main, afile, и мы хотим вручную контролировать, произойдет ли это изменение.
Так же, как и hg update default ; hg merge -r solar
. Инструмент слияния появится на afile
, и мы решим, строка за строкой или кусок за фрагментом, если мы хотим эти изменения. После сохранения сделайте hg stat
:
% hg stat
M afile
M solar-only
И мы видим, что только солнечные системы ставятся в очередь для фиксации по умолчанию. Просто удалите его (с if
).
% hg rm -f solar-only
Теперь hg stat
показывает это как удаленное:
% hg stat
M afile
R solar-only
и когда мы сделаем коммит, у нас будет то, что мы хотим в новом наборе изменений.