У вас есть два вопроса, позвольте мне ответить на них по одному (с небольшим перефразированием):
Q. Когда я hg pull
получу новую голову, Mercurial предложит мне hg merge
. Должен ли я?
A. Нет. Mercurial просто предупреждает вас, что у вас больше голов, чем у вас, и что если вам не нравится это соглашение, вы можете объединиться, чтобы остановить его. Именованные ветви - это головы, поэтому вы увидите это предупреждение, если потяните за собой новую голову
Q. Если я хочу объединить одну именованную ветвь с другой, нужно ли указывать номер редакции?
A . Нет. Это правда, что hg merge
будет автоматически выбирать головки только с той же именованной ветвью, но вы можете сделать hg merge -r newfeature
, и это объединит набор изменений от точки расхождения до головки на newfeature
(6880 в вашем примере ) точно так же, как hg update -r 6880
.
В любом случае, после совершения этого слияния у вас не будет заголовков на newfeature
(новый, получившийся заголовок на default
, потому что это было имя ветви вашего родителя до того, как вы начали слияние. Однако просто делать это после слияния:
hg update newfeature
...code....
hg commit
создаст новую головку в ветви newfeature
, и вы вернетесь, как и до слияния, за исключением того, что все изменения, которые были в новой функции, теперь также доступны в default
.