If we have the scenario as follows:
- Base {A = 1, B = 1}
- BranchX {A = 2, B = 1}
- BranchY {A = 1, B = 2}
Then we would expect;
- merge of BranchX (source) into BranchY (target) with strategy THEIRS to result in {A=2, B=2}, but actually results in {A=2, B=1}
- merge of BranchX (source) into BranchY (target) with strategy OURS to result in {A=1, B=2} (which it currently does).
Given that the basePom is available to PropertyRule it seems like this is a straightforward condition check. At the moment it looks like it simply overwrites the property regardless of whether it has changed.