|
|
#!/bin/sh
|
|
|
|
|
|
. $TESTDIR/helpers.sh
|
|
|
|
|
|
echo "[extensions]" >> $HGRCPATH
|
|
|
echo "graphlog=" >> $HGRCPATH
|
|
|
echo "rebase=" >> $HGRCPATH
|
|
|
|
|
|
createrepo() {
|
|
|
rm -rf repo
|
|
|
hg init repo
|
|
|
cd repo
|
|
|
echo 'c1' >common
|
|
|
hg add common
|
|
|
hg commit -d '0 0' -m "C1"
|
|
|
|
|
|
echo 'c2' >>common
|
|
|
hg commit -d '1 0' -m "C2"
|
|
|
|
|
|
echo 'c3' >>common
|
|
|
hg commit -d '2 0' -m "C3"
|
|
|
|
|
|
hg update -C 1
|
|
|
echo 'l1' >>extra
|
|
|
hg add extra
|
|
|
hg commit -d '3 0' -m "L1"
|
|
|
|
|
|
sed -e 's/c2/l2/' common > common.new
|
|
|
mv common.new common
|
|
|
hg commit -d '4 0' -m "L2"
|
|
|
}
|
|
|
|
|
|
echo
|
|
|
createrepo > /dev/null 2>&1
|
|
|
hg --config extensions.hgext.graphlog= glog --template '{rev}: {desc}\n'
|
|
|
|
|
|
echo
|
|
|
echo '% Conflicting rebase'
|
|
|
hg --config extensions.hgext.rebase= rebase -s 3 -d 2 | cleanrebase
|
|
|
|
|
|
echo
|
|
|
echo '% Abort'
|
|
|
hg --config extensions.hgext.rebase= rebase --abort | cleanrebase
|
|
|
|
|
|
hg --config extensions.hgext.graphlog= glog --template '{rev}: {desc}\n'
|
|
|
|
|
|
createrepo() {
|
|
|
rm -rf repo
|
|
|
hg init repo
|
|
|
cd repo
|
|
|
echo "a">a
|
|
|
hg ci -A -m'A'
|
|
|
echo "b">b
|
|
|
hg ci -A -m'B'
|
|
|
echo "c">c
|
|
|
hg ci -A -m'C'
|
|
|
hg up 0
|
|
|
echo "b">b
|
|
|
hg ci -A -m'B bis'
|
|
|
echo "c1">c
|
|
|
hg ci -A -m'C1'
|
|
|
}
|
|
|
echo
|
|
|
echo '% Rebase and abort without generating new changesets'
|
|
|
|
|
|
echo
|
|
|
createrepo > /dev/null 2>&1
|
|
|
hg --config extensions.hgext.graphlog= glog --template '{rev}:{desc|short}\n'
|
|
|
|
|
|
hg --config extensions.hgext.rebase= rebase -b 4 -d 2 | cleanrebase
|
|
|
|
|
|
hg --config extensions.hgext.graphlog= glog --template '{rev}:{desc|short}\n'
|
|
|
|
|
|
hg rebase -a | cleanrebase
|
|
|
hg glog --template '{rev}:{desc|short}\n'
|
|
|
|
|
|
|