convert: better support for CVS branchpoints (
issue1447)
This records the branches starting at individual CVS file revisions,
using the symbolic names map rather than just the branches
information. This information is used to generate Mercurial
changesets. Despite the changes, the CVS conversion still suffers
heavily from cvsps' deficiencies in generating a correct
representation of the CVS repository history.
#!/bin/sh
hg init test
cd test
echo b > b
hg ci -Am "b"
echo a > a
hg ci -Am "first a"
hg rm a
hg ci -m "del a"
echo b > a
hg ci -Am "second a"
hg rm a
hg ci -m "del2 a"
hg mv b c
hg ci -m "mv b"
echo c >> c
hg ci -m "change c"
hg log -p
hg serve -n test -p $HGPORT -d --pid-file=hg.pid -E errors.log
cat hg.pid >> $DAEMON_PIDS
echo % tip - two revisions
("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/tip/a')
echo % second version - two revisions
("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/3/a')
echo % first deleted - one revision
("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/2/a')
echo % first version - one revision
("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/1/a')
echo % before addition - error
("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/0/a')
echo % should show base link, use spartan because it shows it
("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/log/tip/c?style=spartan')
echo % errors
cat errors.log