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

Re: svn repository



> > > Normally packages are imported using svn-inject for each package, but
> > > then we would lose the CVS histories. I'd like to try to import using
> > > cvs2svn, but I'll need to research the minimum requirements of
> > > svn-buildpackage for this purpose.
> > 
> > cvs2svn is problematic... It's too limited for what we want. Tags get
> > without any package qualification in a toplevel tags dir, etc... And
> > there's where I (temporarily) gave up, I didn't feel like going to do
> > cvs2svn hacking, or writing a small perl script to mangle the svndump
> > intermediate into something we want.
> 
> Well, we could always run it with --trunk-only, and start tags and
> branches afresh in svn. Were there any other issues you recal? I'll go
> ahead and give this a run locally...

My local tests are complete. Here is the procedure I followed, and the
results I obtained:

 - removed tomcat4/debian/Attic/server.xml,v, which conflicts with
   tomcat4/debian/server.xml,v
 - cvs2svn --trunk-only --exclude=CVSROOT to convert to svn repository
 - foreach $package
     - mkdir branches/$package; svn add branches/$package
     - mkdir tags/$package; svn add tags/$package
     - svn propset mergeWithUpstream 1 trunk/$package/debian

My tests suggest that this correctly transfers the files from the CVS to
Subversion, and puts the necessary components in place to allow
svn-buildpackage and svn-upgrade to function properly.

As previously stated, I am in favor of using the standard
svn-buildpackage directory heirarchy type 2:

   {trunk,tags,branches,...}/package

This ensures compatibility with all svn-buildpackage tools, and requires
minimal additional work for us. While svn-inject does not yet support
this layout type, there is a patch upstream, and it is not much work to
manually perform the steps outlined above to add new packages in the
interim.

I set up a sample repository at:

   svn+ssh://<username>@svn.debian.org/var/lib/gforge/chroot/home/users/cfry-guest/pkg-java

Please check it out (svn co), and try building a package or two to
verify that this will indeed work. Feel free to make changes, but
realize that they will be lost when we do the final migration, as I'll
re-synch from CVS.

The main things you need to do to use svn-buildpackage, if you've not
used it before, are create a ../tarballs directory with the upstream
tarball of the package you're building. You can then build the package
by calling svn-buildpackage.

Let me konw how things go, and whether or not this seems usable. If
there are strong feelings against this directory structure, we can of
course discuss it futher (though this is probably the only structure
that I am personally willing to commit time to support).

cheers,
Charles

-- 
Free
Illustrated
Jingle book
In every
Package
Burma-Shave
http://burma-shave.org/jingles/1932/free

Attachment: signature.asc
Description: Digital signature


Reply to: