tests/test-export
author Matt Mackall <mpm@selenic.com>
Mon, 08 Jun 2009 18:14:44 -0500
changeset 8732 3507f6c7715c
parent 8167 6c82beaaa11a
permissions -rwxr-xr-x
dirstate: eliminate reference cycle from normalize Bound methods hold a reference to self, so assigning a bound method to an instance unavoidably creates a cycle. Work around this by choosing a normalize method at walk time instead. Eliminate default arg while we're at it.

#!/bin/sh

hg init repo
cd repo
touch foo
hg add foo
for i in 0 1 2 3 4 5 6 7 8 9 10 11; do
    echo "foo-$i" >> foo
    hg ci -m "foo-$i"
done

for out in "%nof%N" "%%%H" "%b-%R" "%h" "%r"; do
    echo "# foo-$out.patch"
    hg export -v -o "foo-$out.patch" 2:tip
done

echo "# exporting 4 changesets to a file"
hg export -o export_internal 1 2 3 4
grep HG export_internal | wc -l | sed -e 's/^ *//'
echo "# exporting 4 changesets to a file"
hg export 1 2 3 4 | grep HG | wc -l | sed -e 's/^ *//'
echo "# exporting revision -2 to a file"
hg export -- -2