tests/test-convert-clonebranches
author Matt Mackall <mpm@selenic.com>
Mon, 18 May 2009 17:36:24 -0500
changeset 8501 ab0e3f7ea315
parent 6723 1fe6f365df2e
child 10119 bb5ea66789e3
permissions -rwxr-xr-x
commit: some tidying - simplify handling of 'close' - kill silly wlock=None - sort/uniq files later

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "hgext.convert = " >> $HGRCPATH
echo "[convert]" >> $HGRCPATH
echo "hg.tagsbranch=0" >> $HGRCPATH

hg init source
cd source
echo a > a
hg ci -qAm adda
# Add a merge with one parent in the same branch
echo a >> a
hg ci -qAm changea
hg up -qC 0
hg branch branch0
echo b > b
hg ci -qAm addb
hg up -qC
hg merge default
hg ci -qm mergeab
hg tag -ql mergeab
cd ..

# Miss perl... sometimes
cat > filter.py <<EOF
import sys, re

r = re.compile(r'^(?:\d+|pulling from)')
sys.stdout.writelines([l for l in sys.stdin if r.search(l)])
EOF

echo % convert
hg convert -v --config convert.hg.clonebranches=1 source dest |
    python filter.py

# Add a merge with both parents and child in different branches
cd source
hg branch branch1
echo a > file1
hg ci -qAm c1
hg up -qC mergeab
hg branch branch2
echo a > file2
hg ci -qAm c2
hg merge branch1
hg branch branch3
hg ci -qAm c3
cd ..

echo % incremental conversion
hg convert -v --config convert.hg.clonebranches=1 source dest |
    python filter.py