##// END OF EJS Templates
ui: simplify parent overlay logic
ui: simplify parent overlay logic

File last commit:

r7278:45495d78 default
r8140:7c47ac96 default
Show More
test-rebase-collapse
180 lines | 2.9 KiB | text/plain | TextLexer
/ tests / test-rebase-collapse
Stefano Tortarolo
Add rebase extension
r6906 #!/bin/sh
echo "[extensions]" >> $HGRCPATH
echo "graphlog=" >> $HGRCPATH
echo "rebase=" >> $HGRCPATH
BASE=`pwd`
Brendan Cully
Debashify rebase tests
r6910 addcommit () {
Stefano Tortarolo
Add rebase extension
r6906 echo $1 > $1
hg add $1
hg commit -d "${2} 0" -u test -m $1
}
Brendan Cully
Debashify rebase tests
r6910
commit () {
Stefano Tortarolo
Add rebase extension
r6906 hg commit -d "${2} 0" -u test -m $1
}
Brendan Cully
Debashify rebase tests
r6910 createrepo () {
Stefano Tortarolo
Add rebase extension
r6906 cd $BASE
rm -rf a
hg init a
cd a
addcommit "A" 0
addcommit "B" 1
addcommit "C" 2
addcommit "D" 3
hg update -C 0
addcommit "E" 4
hg update -C 0
addcommit "F" 5
hg merge -r 4
commit "G" 6
hg update -C 5
addcommit "H" 7
}
createrepo > /dev/null 2>&1
hg glog --template '{rev}: {desc}\n'
Stefano Tortarolo
rebase: avoid redundant merges (issue1301)
r7278 echo '% Rebasing B onto H'
Stefano Tortarolo
Add rebase extension
r6906 hg up -C 3
hg rebase --collapse 2>&1 | sed 's/\(saving bundle to \).*/\1/'
hg glog --template '{rev}: {desc}\n'
Stefano Tortarolo
rebase: avoid redundant merges (issue1301)
r7278 echo "Expected A, B, C, D, F, H"
hg manifest
Stefano Tortarolo
Add rebase extension
r6906
createrepo > /dev/null 2>&1
Stefano Tortarolo
rebase: avoid redundant merges (issue1301)
r7278 echo
echo '% Rebasing G onto H'
Stefano Tortarolo
Add rebase extension
r6906 hg rebase --base 6 --collapse 2>&1 | sed 's/\(saving bundle to \).*/\1/'
hg glog --template '{rev}: {desc}\n'
Stefano Tortarolo
rebase: avoid redundant merges (issue1301)
r7278 echo "Expected A, E, F, H"
hg manifest
Stefano Tortarolo
Add rebase extension
r6906
Brendan Cully
Debashify rebase tests
r6910 createrepocomplex () {
Stefano Tortarolo
Add rebase extension
r6906 cd $BASE
rm -rf a
hg init a
cd a
addcommit "A" 0
addcommit "B" 1
hg up 0
addcommit "C" 2
hg merge
commit "D" 3
hg up 1
addcommit "E" 4
addcommit "F" 5
hg merge
commit "G" 6
hg up 0
addcommit "H" 7
}
Stefano Tortarolo
rebase: avoid redundant merges (issue1301)
r7278 echo
Stefano Tortarolo
Add rebase extension
r6906 createrepocomplex > /dev/null 2>&1
hg glog --template '{rev}: {desc}\n'
echo
echo '% Rebase and collapse - more than one external (fail)'
hg rebase -s 2 --collapse
echo
Stefano Tortarolo
rebase: avoid redundant merges (issue1301)
r7278 echo '% Rebase and collapse - E onto H'
Stefano Tortarolo
Add rebase extension
r6906 hg rebase -s 4 --collapse 2>&1 | sed 's/\(saving bundle to \).*/\1/'
hg glog --template '{rev}: {desc}\n'
Stefano Tortarolo
rebase: avoid redundant merges (issue1301)
r7278 echo "Expected A, B, C, E, F, H"
hg manifest
Stefano Tortarolo
Add rebase extension
r6906
Stefano Tortarolo
rebase: avoid redundant merges (issue1301)
r7278 createrepocomplex () {
cd $BASE
rm -rf a
hg init a
cd a
addcommit "A" 0
addcommit "B" 1
hg up 0
addcommit "C" 2
hg merge
commit "D" 3
hg up 1
addcommit "E" 4
echo "F" > E
commit "F" 5
addcommit "G" 6
hg merge
commit "H" 7
hg up 0
addcommit "I" 8
}
echo
createrepocomplex > /dev/null 2>&1
hg glog --template '{rev}: {desc}\n'
echo
echo '% Rebase and collapse - E onto I'
hg rebase -s 4 --collapse
echo '% Fix conflict and continue'
echo 'Resolved merge' > E
hg resolve -m E
hg rebase -c 2>&1 | sed 's/\(saving bundle to \).*/\1/'
hg glog --template '{rev}: {desc}\n'
echo "Expected A, B, C, E, G, I"
hg manifest
echo 'Cat E:'
cat E
createrepocomplex () {
cd $BASE
rm -rf a
hg init a
cd a
addcommit "A" 0
addcommit "B" 1
addcommit "C" 2
hg up 1
addcommit "D" 3
hg merge
commit "E" 4
hg up 0
addcommit "F" 5
}
echo
createrepocomplex > /dev/null 2>&1
hg glog --template '{rev}: {desc}\n'
echo
echo '% Rebase and collapse - B onto F'
hg rebase -s 1 --collapse 2>&1 | sed 's/\(saving bundle to \).*/\1/'
hg glog --template '{rev}: {desc}\n'
echo "Expected A, B, C, D, F"
hg manifest
Stefano Tortarolo
Add rebase extension
r6906 exit 0