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
cat <<EOF >> $HGRCPATH
[extensions]
notify=
[hooks]
changegroup.notify = python:hgext.notify.hook
[notify]
sources = push
diffstat = False
maxsubject = 200
[usersubs]
foo@bar = *
[reposubs]
* = baz
EOF
hg init a
echo % clone
hg --traceback clone a b
echo a > b/a
echo % commit
hg --traceback --cwd b commit -Ama
echo a >> b/a
echo % commit
hg --traceback --cwd b commit -Amb
echo % push
hg --traceback --cwd b push ../a 2>&1 |
python -c 'import sys,re; print re.sub("\n\t", " ", sys.stdin.read()),' |
sed -e 's/\(Message-Id:\).*/\1/' \
-e 's/changeset \([0-9a-f]* *\)in .*test-notif/changeset \1in test-notif/' \
-e 's/^Subject: .*test-notify/Subject: test-notify/' \
-e 's/^details: .*test-notify/details: test-notify/' \
-e 's/^Date:.*/Date:/'