Thread (27 messages) flat view 27 messages, 12 authors, 2016-06-15

Re: CVS -> SVN -> Git

From: Shawn O. Pearce <hidden>
Date: 2016-06-15 22:43:21

Steffen Prohaska [off-list ref] wrote:
On Jul 14, 2007, at 7:09 PM, Michael Haggerty wrote:
quoted
Martin Langhoff wrote:
quoted
On 7/14/07, Michael Haggerty [off-list ref] wrote:
quoted
Incidentally, now that cvs2svn 2.0.0 is nearly out, I am thinking  
about
what it would take to write some other back ends for cvs2svn-- 
turning
it, essentially, into cvs2xxx.  Most of the work that cvs2svn  
...
quoted
quoted
Great to hear that. I'm game if we can do something in this direction
- surely we can make it talk to fastimport ;-)
We added some hooks to cvs2svn 2.0 to start working in this direction.
But I don't really know what information is needed for a git import.
One quick-and-dirty idea that I had was to have cvs2svn output
information compatible with cvsps's output, as I believe that several
tools rely on cvsps to do the dirty work and so could perhaps be
persuaded to use cvs2svn out of the box.
From my understanding, piping data to git fast-import would be
a sane gateway to git. The input format of fast-import is document
in [1].

Maybe Shaw Pearce has some comments on that. Shawn did most
(maybe all) of the work on git-fast-import.
You must be new to this discussion.  ;-)

git-fast-import started as a backend for a hacked up version of
cvs2svn that Jon Smirl was working on to convert the massive Mozilla
CVS repository into Git.  Jon started from the cvs2svn codebase
because it best handled the damaged RCS files that exist in the
Mozilla repository.  Many emails have been exchanged between myself,
Michael and Jon on this subject.

So yes, git-fast-import was designed to act as a backend behind
something like cvs2xxx.  Some of the "oddities" of the fast-import
input language are the way they are partly because of the way
the (older) cvs2svn code generated output in SVN dump format.
Certain data was available at certain times and not at others,
so Jon wanted to feed it to git-fast-import when he had it, rather
than needing to buffer it or rearrange code.

I'm staying far away from writing fast-import frontends.  Anyone that
wants/needs a CVS frontend is welcome to implement one, but it
won't written be me.  I gave up CVS a long time ago and will never
return to it.  My only VCS is Git, and converting Git->Git is sort
of stupid.  So I have no need for a fast-import frontend.

But I do maintain fast-import.  Well over 99% of it was written
by me.  ;-)

-- 
Shawn.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help