evolve: implement resolution of content-divergence when on differet parents
This patch implements the basic version of resolution of content-divergence
changesets when they are on different parents but one of the parent is gca of
both the different parents.
The functionality first relocates the divergent changeset which was left behind
and then resolves the content-divergence like it resolves in normal cases.
This is a very basic implementation because it still does not work on
interrupted evolution. Test changes in this patch shows the basic functionality
working. The output of dry-run is also required to be tweaked in such cased.
Upcoming patches will add more tests and will improve the implementation to work
during conflicts too.
exclude contrib
recursive-exclude contrib *
exclude hgext3rd/evolve/hack
recursive-exclude hgext3rd/evolve/hack *
exclude hgext3rd/evolve/legacy.py
exclude Makefile
exclude tests/test-drop.t
exclude tests/test-inhibit.t
exclude tests/test-oldconvert.t
exclude docs/tutorial/.netlify
include COPYING
include docs/figures/hgview-example.png
include docs/makefile
include docs/*.py
include docs/README
include docs/*.rst
include docs/static/*.svg
include docs/tutorials/*.t
include hgext3rd/__init__.py
include hgext3rd/evolve/*.py
include hgext3rd/evolve/thirdparty/*.py
include hgext3rd/topic/*.py
include hgext3rd/topic/README
include MANIFEST.in
include README
include CHANGELOG
include setup.py
include tests/*.py
include tests/*.sh
include tests/testlib/*.sh
include tests/*.t
recursive-include docs/tutorial *.rst
recursive-include docs/tutorial *.css
include docs/tutorial/standalone.html
recursive-include docs/tutorial *.js
recursive-include docs/tutorial *.md
recursive-include docs/tutorial *.py
recursive-include docs/tutorial *.sh
recursive-include docs/tutorial *.t
prune debian
recursive-include docs/figures *.svg