monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] Re: monotone CVS import failed.


From: Markus Schiltknecht
Subject: Re: [Monotone-devel] Re: monotone CVS import failed.
Date: Sat, 28 Oct 2006 17:06:29 +0200
User-agent: Thunderbird 1.5.0.7 (X11/20060927)

Hi,

Michael Haggerty wrote:
For the record, cvs2svn works *fine* with the mozilla repository.  I've
converted it multiple times without problems.

What doesn't work us using cvs2svn *with Jon Smirl's changes* to support
conversion from CVS *to git*.

Oh, that's good to know.

This was never a design goal of cvs2svn.
 We (meaning I, since I am for all intents and purposes the only cvs2svn
developer right now) would like to support him in making this work, but
I haven't had much time recently to work on cvs2svn.

IIUC, the specific problem is that git is missing some features that CVS
has, like the ability to create tags based on multiple branches.

I wouldn't call that a feature, but a bug ;-)

Whether this is a worthwhile feature or not is debatable, but CVS and
Subversion can both do it.  So it is obviously more work to convert a
CVS repository to git than to Subversion.

(Will you also have this problem when converting to Monotone?)

Yes, because monotone does not have this ... ehm... feature. I will have to add artificial revisions for tags which are spread over multiple revisions. Or drop the tag.

Is the monotone conversion done in C/C++ or a scripting language?

C++, with heavy usage of STL and boost, thus with exceptions and rtti (AFAIK). I didn't do any tuning, yet.

Because I think the Python object overhead would make an in-core
conversion too expensive for the largest archives, at least without
packing in-core information into strings in binary format or something.

That may well be. I've just recently also had problems with python's GC. (Well, that was 2.3, though. Updating to 2.4 helped a great deal.)

The on-disk databases and multiple passes also give us resumability of
a partial conversion.  But I readily admit that the on-disk + pass
structure of our conversions is a lot of work to support and extremely
expensive in terms of conversion time.

I've been thinking about doing passes and write out its results to a sqlite db (which is monotone's standard storage backend). But it seemed like to much work. Thus, I'm not intending to support partial conversion for monotone's cvs_import.

Regards

Markus




reply via email to

[Prev in Thread] Current Thread [Next in Thread]