[Nut-upsdev] Repo conversion progress report

Eric S. Raymond esr at thyrsus.com
Thu Dec 22 22:56:36 UTC 2011


I am pleased to be able to report that reposurgeon's Subversion dump
stream parser is now working well enough to produce a live git repo
from the NUT history up to r3364.

This didn't happen easily.  The NUT repo is a wonderful test case, and
by that I mean it was a stone bitch to get the stream parser to handle
it. 

One class of problems was due to cv2svn, which did things with the
stream format that are legal but...perverse.  That was mostly in the
early history; it get a lot cleaner after the switchover from CVS.

Another was scale.  I had a couple of nominally working
implementations that were unusable because they grovelled for hours
before producing results.  But the full translation of 33K commits is
now down to 117 seconds on a bog-standard 2.66Ghz dual-core Intel box.

I'm not done yet.  Now I get to go over the converted repo with a 
fine-tooth comb, looking for Subversion metadata that could be
converted more intelligently.  There might be more coding to do.

Then, I will still need to do all the manual and only
semi-automated stuff - reference lifting, massaging comments into 
git form, that sort of thing.  After that Charles Lepple should 
review the result.

But this is a big step forward.  I now know that the translation code
works; it passes a battery of twelve tests involving small svn repos
hand-crafted to exercise all the cases I could think of, and it makes
something reasonable from 33K commits of NUT.
-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>




More information about the Nut-upsdev mailing list