evolve: add logic to resolve content-divergence with a public cset
Public content-divergence is the divergence where a cset is content-divergent
with a public cset.
To solve public divergence:
1) perform content-divergent resolution
2) resultant node is phase divergent
3) perform phase divergence resolution
It is the intial logic to solve public divergence.
Next patches will be the covering the cases of:
1) relocation: when we need to relocate to node
2) continue: to add this resolution in case of --continue
3) the case when content-divergence resolution gives a result similar
to public cset.
Added test-evolve-public-content-divergent.t reflect the added behaviour.
[flake8]
ignore =
#closing bracket does not match indentation of opening bracket's line
E123,
# closing bracket does not match visual indentation
E124,
# visually indented line with same indent as next logical line
E129,
# at least two spaces before inline comment
E261,
# too many leading '#' for block comment
E266,
# expected 2 blank lines, found 0
E302,
# expected 2 blank lines after end of function or class
E305,
# module level import not at top of file
E402,
# line too long (82 > 79 characters)
E501,
# do not assign a lambda expression, use a def
E731,
# class names should use CapWords convention
N801,
# line break occurred before a binary operator
W503
builtins=xrange, execfile