view tests/test-convert-clonebranches @ 9110:561ff8d9e4f0

mq: qpop now tells which patches are popped When navigating through a patch series by qpushing and qpopping it was easy to get lost because qpop was silent. I found myself often running qnext after qpop to see which patch I just dropped - especially if I was about to qrm it. This patch makes qpop more symmetric to qpush by showing which patches are applied/"unapplied". I think it is a good change even though it changes output by adding a new line of output.
author Mads Kiilerich <mads@kiilerich.com>
date Thu, 09 Jul 2009 23:59:03 +0200
parents 1fe6f365df2e
children bb5ea66789e3
line wrap: on
line source

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