evolve: test a common case of public divergence
evolve: in pubdiv, handle the case when public branch is behind the mutable
In public divergence, when public branch is behind the mutable one the behaviour
that this patch added is that we relocate the draft one to public side.
This should be fine in most case, but might be an issue in some other (eg, when
the draft side of the divergence is rebase away from ancestors it relies on.)
Test written by Pierre-Yves David <pierre-yves.david@octobus.net>
# setup config and various utility to test new heads checks on push
. $TESTDIR/testlib/common.sh
cat >> $HGRCPATH <<EOF
[ui]
# simpler log output
logtemplate ="{node|short} ({phase}): {desc}\n"
[phases]
# non publishing server
publish=False
[extensions]
# we need to strip some changeset for some test cases
strip=
evolve=
EOF
setuprepos() {
echo creating basic server and client repo
hg init server
cd server
mkcommit root
hg phase --public .
mkcommit A0
cd ..
hg clone server client
}