view tests/test-transplant @ 4195:e8ee8fdeddb1

change locate to use relglobs by default This makes its default behaviour useful again (issue108), and changes it search the entire repository by default (instead of just the cwd), just like all other commands. It also hides issue204 by default, but you'll still see the same behaviour if you give it a relpath: pattern.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Sat, 10 Mar 2007 23:00:57 -0300
parents 889f7e74a0d9
children 9bd078ce8de9
line wrap: on
line source

#!/bin/sh

cat <<EOF >> $HGRCPATH
[extensions]
transplant=
EOF

hg init t
cd t
echo r1 > r1
hg ci -Amr1 -d'0 0'
echo r2 > r2
hg ci -Amr2 -d'1 0'
hg up 0

echo b1 > b1
hg ci -Amb1 -d '0 0'
echo b2 > b2
hg ci -Amb2 -d '1 0'
echo b3 > b3
hg ci -Amb3 -d '2 0'

hg log --template '{rev} {parents} {desc}\n'

cd ..
hg clone t rebase
cd rebase

hg up -C 1
echo '% rebase b onto r1'
hg transplant -a -b tip
hg log --template '{rev} {parents} {desc}\n'

cd ..
hg clone t prune
cd prune

hg up -C 1
echo '% rebase b onto r1, skipping b2'
hg transplant -a -b tip -p 3
hg log --template '{rev} {parents} {desc}\n'

cd ..
echo '% remote transplant'
hg clone -r 1 t remote
cd remote
hg transplant --log -s ../t 2 4
hg log --template '{rev} {parents} {desc}\n'

echo '% skip previous transplants'
hg transplant -s ../t -a -b 4
hg log --template '{rev} {parents} {desc}\n'

echo '% skip local changes transplanted to the source'
echo b4 > b4
hg ci -Amb4 -d '3 0'
cd ..
hg clone t pullback
cd pullback
hg transplant -s ../remote -a -b tip

echo '% transplant --continue'
hg init ../tc
cd ../tc
cat <<EOF > foo
foo
bar
baz
EOF
echo toremove > toremove
hg ci -Amfoo -d '0 0'
cat <<EOF > foo
foo2
bar2
baz2
EOF
rm toremove
echo added > added
hg ci -Amfoo2 -d '0 0'
echo bar > bar
hg ci -Ambar -d '0 0'
echo bar2 >> bar
hg ci -mbar2 -d '0 0'
hg up 0
echo foobar > foo
hg ci -mfoobar -d '0 0'
hg transplant 1:3
# transplant -c shouldn't use an old changeset
hg up -C
hg transplant 1
hg transplant --continue
hg transplant 1:3
hg locate