Turning cvs2{svn,git} into cvs2hg

Michael Haggerty mhagger at alum.mit.edu
Tue Aug 4 14:32:06 CDT 2009

Greg Ward wrote:
> On Fri, Jul 31, 2009 at 6:16 PM, Michael Haggerty<mhagger at alum.mit.edu> wrote:
>> You are quite right that cvs2git has a burning need for such a
>> verification tool.  I built some (very!) minimal tools verifying CVS ->
>> git conversions and contributed them to the git project for their tests
>> of git-cvsimport.  It can be found in the git "next" branch under
>> t/lib-cvs.sh and t/t96*.
>> It would be great to have a generic basic "sine qua non" verifier that
>> could be applied to any of the outputs.
> Hang on a sec... are you telling me that even *you* didn't know about
> contrib/verify-cvs2svn.py?

Yes, I know about it, even though it hasn't gotten much care and
attention.  But up until now it has only verified cvs2svn, not cvs2git
or cvs2hg...

> Anyways, I've started hacking on it.  My patches so far are:
>   http://vc.gerg.ca/hg/cvs2svn/rev/e79fb91e68e6
>   http://vc.gerg.ca/hg/cvs2svn/rev/0ba887e6e58e
>   http://vc.gerg.ca/hg/cvs2svn/rev/5991b868c571
>   http://vc.gerg.ca/hg/cvs2svn/rev/d79a9c0c045e
>   http://vc.gerg.ca/hg/cvs2svn/rev/018436f39d73
> The last patch adds Mercurial support.  Should be relatively
> straightforward to add git support too, as long as 'git tags' and 'git
> branches' are as easy to parse as 'hg {tags,branches} -q' and 'svn
> ls'.
> Or, if you just want to see the current code:
>   http://vc.gerg.ca/hg/cvs2svn/file/018436f39d73/contrib/verify-cvs2svn.py
> BTW, please let me know if you love my patches and want to immediately
> start applying them.

I love your patches and have already applied them.  I would have applied
them even earlier but I was on vacation and out of internet contact
since last Thursday :-)

The patches all looked great and go in what I consider to be the right
direction.  I have to admit I did not review every last detail, but
since the script is in the contrib directory it doesn't (yet) need
extraordinary quality control.  That also means that I will be
especially accepting of additional patches to that script :-)

I see that you have made lots of other changes in your Mercurial repo
before and after the 5 that you referred to above.  Please let me know
specifically which other patches you would like me to consider for
cvs2svn trunk.

Please also consider visiting the #cvs2svn channel on irc.freenode.net
for real-time discussions.


More information about the Mercurial-devel mailing list