Improved conversion from cvs => bzr
Robert Collins
robertc at robertcollins.net
Mon Sep 4 04:13:32 BST 2006
On Sun, 2006-09-03 at 13:47 -0500, John Arbash Meinel wrote:
> I had an idea about how the conversion process could be changed to make
> it faster.
>
> Basically, the idea is that in a cvs => bzr conversion, you first read
> the rlog, and you parse that so that you get all the revisions you want
> to generate, similar to how tailor does it (and I assume cscvs does it),
> only you actually assign the final revision id for every changeset.
This is the basic approach used by my mercurial plugin.
The key things in the CVS case are:
* to generate the per file graph you need the revision ids for the
commits that will be occuring.
* to generate the commits that are needed you need the rlog data for
all the files to synthesis changesets [including breaking loops and
enforcing monotonic increases of revids while grouping by timestamp etc]
So you have to generate all the rlogs first. Then you can turn those
into inventories, then you can do each files data straight into a knit,
and finally write the inventories then write the revisions.
Rob [ who has done this a few too many times now ]
--
GPG key available at: <http://www.robertcollins.net/keys.txt>.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060904/3236e8ea/attachment.pgp
More information about the bazaar
mailing list