In your example:
local
is the last set of changes on branch A.other
is the last set of changes on branch B.base
is the newest set of changes that is the ancestor of both branches.
If you simply execute the commands listed above ( hg update A
, hg merge B
), you wonβt be able to choose which files to take, because Mercurial will make this choice for you where it can.
The only time you need to make a decision is if the file has been modified in both branches in such a way that Mercurial cannot automatically resolve. In this case, you will be offered your merge program to resolve conflicts. You must look at the changes made to each branch and manually decide how to combine them. If another developer has made one of the changes, you may need to ask them to help with the merger.
If you perform hg update A
, hg merge B
, then the only branch that will be affected is A.
source share