From: "Jon Smirl" <jonsmirl@gmail.com>
To: "Martin Langhoff" <martin.langhoff@gmail.com>
Cc: "Git Mailing List" <git@vger.kernel.org>
Subject: Re: Some tips for doing a CVS importer
Date: Mon, 20 Nov 2006 20:53:15 -0500 [thread overview]
Message-ID: <9e4733910611201753m392b5defpb3eb295a075be789@mail.gmail.com> (raw)
In-Reply-To: <46a038f90611201629o39f11f42ye07b86159360b66e@mail.gmail.com>
On 11/20/06, Martin Langhoff <martin.langhoff@gmail.com> wrote:
> On 11/21/06, Jon Smirl <jonsmirl@gmail.com> wrote:
> > > I gather this means that the cvs2svn track hasn't been as productive
> > > as expected. Any remaining/unsolvable issues with it? I have been
> > > chronically busy on my e-learning projects, but don't discard coming
> > > back to this when I have some time.
> >
> > Look in this thread
> > [Fwd: Re: What's in git.git]
> >
> > There is a message in there that explains a problem that the cvs2svn
> > people aren't going to fix and it kills git.
>
> I see - thanks for the pointer. Sorry to hear others in the Moz
> project weren't so keen on hearing about alternatives to SVN. Long
> term only something like GIT seems viable for such a large project (in
> terms of community, branches/subprojects and codebase).
>
> Two remaining questions
> - Where can I get your latest code? :-)
I gave up on my cvs2git code, cvs2svn has been refactored so badly
that it was too much trouble tracking. It would be easier to write it
again. Most of the smarts from the import process is in the
git-fastimport code which Shawn has. cvs2svn underwent a major
algorithm change after I wrote the first version of git2svn.
I can probably find the code if you really want it, but it will be
leading you off in the wrong direction.
> - I gather the moz cvs repo has some cases that require getting the
> symbol resolution right. Could this be performed as an extra pass /
> task?
Processing the symbols is integral to deciding how to build the change
sets. Right now cvs2svn ignores the symbol dependency information and
builds the change sets in a way that forces the mini-branches. That
causes 60% of the 2,000 symbols in Mozilla CVS to end up as little
branches. Look at the three commit example in the other thread to see
exactly what the problem is.
SVN hides the mini branch by creating a symbol like this:
Symbol XXX, change set 70
copy All from change set 50
copy file A from change set 55
copy file B,C from change set 60
copy file D from change set 61
copy file E,F,G from change set 63
copy file H from change set 67
It has to do all of those copies because the change sets weren't
constructed while taking symbol dependency information into account.
Symbol XXX can't copy from change set 69 because commits from after
the symbol was created are included in change sets 51-69.
> Eventually the Moz crowd will outgrow SVN - perhaps we should be
> parsing the SVN dump format instead ;-)
>
> cheers,
>
>
> martin
>
--
Jon Smirl
next prev parent reply other threads:[~2006-11-21 1:53 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-11-20 21:49 Some tips for doing a CVS importer Jon Smirl
2006-11-20 23:03 ` Martin Langhoff
2006-11-20 23:37 ` Jon Smirl
2006-11-21 0:29 ` Martin Langhoff
2006-11-21 0:55 ` Carl Worth
2006-11-21 1:40 ` Jon Smirl
2006-11-21 6:39 ` Shawn Pearce
2006-11-21 19:56 ` lamikr
2006-11-21 20:05 ` Shawn Pearce
2006-11-23 19:45 ` Robin Rosenberg
2006-11-25 6:59 ` Shawn Pearce
2006-11-21 20:03 ` Petr Baudis
2006-11-21 20:15 ` Shawn Pearce
2006-11-21 20:22 ` Johannes Schindelin
2006-11-23 9:10 ` Johannes Sixt
2006-11-21 20:40 ` Martin Langhoff
2006-11-21 1:53 ` Jon Smirl [this message]
2006-11-26 10:18 ` Marko Macek
2006-11-26 15:35 ` Jon Smirl
2006-11-26 16:11 ` Marko Macek
2006-11-26 17:51 ` Jon Smirl
2006-11-27 11:29 ` Michael Haggerty
2006-11-21 6:43 ` Shawn Pearce
2006-11-27 11:24 ` Michael Haggerty
2006-11-27 11:51 ` Markus Schiltknecht
2006-11-27 22:09 ` Michael Haggerty
2006-11-28 15:18 ` Markus Schiltknecht
2006-11-30 0:35 ` Michael Haggerty
2006-11-30 0:45 ` Daniel Jacobowitz
2006-11-27 15:20 ` Jon Smirl
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=9e4733910611201753m392b5defpb3eb295a075be789@mail.gmail.com \
--to=jonsmirl@gmail.com \
--cc=git@vger.kernel.org \
--cc=martin.langhoff@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).