tests/test-rebase-newancestor
author Christian Boos <cboos@bct-technology.com>
Mon, 09 Nov 2009 20:15:49 +0100
changeset 9815 49efeed49c94
child 11198 b345b1cc124f
permissions -rw-r--r--
rebase: make sure the newancestor is used during the whole update (issue1561) Before this change, newancestor was used only once as a replacement for ancestor.ancestor, but merge.update calls ancestor.ancestor several times, so it ends up with the "wrong" ancestor (the real ancestor, but we want the parent of the rebased changeset for all but the first rebased changeset). Added a new test case for this: test-rebase-newancestor. Also, in one scenario in test-rebase-collapse, there was a spurious conflict caused by the same issue, so that test case was fixed by removing the now unneeded conflict resolution and the output was adapted accordingly.

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "graphlog=" >> $HGRCPATH
echo "rebase=" >> $HGRCPATH

rm -rf repo
hg init repo
cd repo

echo A > a
echo >> a
hg commit -AmA -u test -d '0 0'

echo B > a
echo >> a
hg commit -mB -u test -d '1 0'

echo C > a
echo >> a
hg commit -mC -u test -d '2 0'

hg up -C 0
echo D >> a
hg commit -AmAD -u test -d '3 0'

hg glog --template '{rev}:{desc} {node|short}\n'
hg rebase -q -s 1 -d 3 2>&1 | grep -v 'saving bundle'
hg glog --template '{rev}:{desc} {node|short}\n'

exit 0