view tests/test-export @ 8954:e67e5b60e55f

Branch heads should not include "heads" that are ancestors of other heads. For example, given 1 (branch a) -> 2 (branch b) -> 3 (branch a) I expect "hg heads a" to show only 3. Discovered by running hg heads HEAD on the mutt repo, where older clients committed default on top of HEAD.
author Brendan Cully <brendan@kublai.com>
date Mon, 29 Jun 2009 00:54:23 -0700
parents 6c82beaaa11a
children
line wrap: on
line source

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