tests/test-convert-clonebranches
author Patrick Mezard <pmezard@gmail.com>
Sat, 05 Apr 2008 18:15:04 +0200
changeset 6479 31abcae33b4f
parent 5934 e495f3f35b2d
child 6723 1fe6f365df2e
permissions -rwxr-xr-x
dirstate: do not ignore current directory '.' (issue 1078)

#!/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
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