test-rebase-scenario-global
93 lines
| 2.0 KiB
| text/plain
|
TextLexer
/ tests / test-rebase-scenario-global
|
r6906 | #!/bin/sh | ||
|
r11198 | source $TESTDIR/helpers.sh | ||
|
r6906 | echo "[extensions]" >> $HGRCPATH | ||
echo "graphlog=" >> $HGRCPATH | ||||
echo "rebase=" >> $HGRCPATH | ||||
BASE=`pwd` | ||||
|
r6910 | addcommit () { | ||
|
r6906 | echo $1 > $1 | ||
hg add $1 | ||||
|
r8168 | hg commit -d "${2} 0" -m $1 | ||
|
r6906 | } | ||
|
r6910 | |||
commit () { | ||||
|
r8168 | hg commit -d "${2} 0" -m $1 | ||
|
r6906 | } | ||
|
r6910 | createrepo () { | ||
|
r6906 | cd $BASE | ||
rm -rf a | ||||
hg init a | ||||
cd a | ||||
addcommit "A" 0 | ||||
addcommit "B" 1 | ||||
hg update -C 0 | ||||
addcommit "C" 2 | ||||
hg update -C 0 | ||||
addcommit "D" 3 | ||||
hg merge -r 2 | ||||
commit "E" 4 | ||||
hg update -C 3 | ||||
addcommit "F" 5 | ||||
} | ||||
createrepo > /dev/null 2>&1 | ||||
hg glog --template '{rev}: {desc}\n' | ||||
echo '% Rebasing' | ||||
echo '% B onto F - simple rebase' | ||||
|
r11198 | hg rebase -s 1 -d 5 | hidebackup | ||
|
r6906 | hg glog --template '{rev}: {desc}\n' | ||
createrepo > /dev/null 2>&1 | ||||
echo '% B onto D - intermediate point' | ||||
|
r11198 | hg rebase -s 1 -d 3 | hidebackup | ||
|
r6906 | hg glog --template '{rev}: {desc}\n' | ||
createrepo > /dev/null 2>&1 | ||||
echo '% C onto F - skip of E' | ||||
|
r11198 | hg rebase -s 2 -d 5 | hidebackup | ||
|
r6906 | hg glog --template '{rev}: {desc}\n' | ||
createrepo > /dev/null 2>&1 | ||||
echo '% D onto C - rebase of a branching point (skip E)' | ||||
|
r11198 | hg rebase -s 3 -d 2 | hidebackup | ||
|
r6906 | hg glog --template '{rev}: {desc}\n' | ||
createrepo > /dev/null 2>&1 | ||||
echo '% E onto F - merged revision having a parent in ancestors of target' | ||||
|
r11198 | hg rebase -s 4 -d 5 | hidebackup | ||
|
r6906 | hg glog --template '{rev}: {desc}\n' | ||
createrepo > /dev/null 2>&1 | ||||
echo '% D onto B - E maintains C as parent' | ||||
|
r11198 | hg rebase -s 3 -d 1 | hidebackup | ||
|
r6906 | hg glog --template '{rev}: {desc}\n' | ||
|
r9578 | echo '% These will fail (using --source)' | ||
|
r6906 | createrepo > /dev/null 2>&1 | ||
echo '% E onto D - rebase onto an ancestor' | ||||
hg rebase -s 4 -d 3 | ||||
echo '% D onto E - rebase onto a descendant' | ||||
hg rebase -s 3 -d 4 | ||||
echo '% E onto B - merge revision with both parents not in ancestors of target' | ||||
hg rebase -s 4 -d 1 | ||||
|
r9578 | echo | ||
echo '% These will abort gracefully (using --base)' | ||||
echo '% E onto E - rebase onto same changeset' | ||||
hg rebase -b 4 -d 4 | ||||
echo '% E onto D - rebase onto an ancestor' | ||||
hg rebase -b 4 -d 3 | ||||
echo '% D onto E - rebase onto a descendant' | ||||
hg rebase -b 3 -d 4 | ||||
|
r6906 | exit 0 | ||