HomePhabricator

merge: add missing ACTION_KEEP when both remote and ancestor are not present

Authored by pulkit.

Description

merge: add missing ACTION_KEEP when both remote and ancestor are not present

Previous patch may lead to confusion that the related criss-cross merge is
consistent when done from any of the parents. However this is not true and we
were missing setting an ACTION_KEEP.

This patch now exposes that bid-merge favors ACTION_KEEP always and the result
of merge is different when started from different parents.

This change also effects a test case above where bid merge was wrongly picking
r because it was missing keep related information from one of the ancestor.

After this test, we are back in a state in the criss-cross merge tests where the
result depends on which parent we are merging from.

Differential Revision: https://phab.mercurial-scm.org/D8941