Correct optimization from 3464f5e77f34; add a test.
If there are two (or more) heads that point to the same .hgtags
node, we can safely skip parsing the file in all but the last head.
(In 3464f5e77f34, we were parsing the file in the first head and
skipping all the others.)
#!/bin/sh
mkdir t
cd t
hg init
echo "[merge]" >> .hg/hgrc
echo "followcopies = 1" >> .hg/hgrc
echo foo > a
echo foo > a2
hg add a a2
hg ci -m "start" -d "0 0"
hg mv a b
hg mv a2 b2
hg ci -m "rename" -d "0 0"
echo "checkout"
hg co 0
echo blahblah > a
echo blahblah > a2
hg mv a2 c2
hg ci -m "modify" -d "0 0"
echo "merge"
hg merge -y --debug
hg status -AC
cat b
hg ci -m "merge" -d "0 0"
hg debugindex .hg/data/b.i
hg debugrename b