I used the python script located at http://cvs2svn.tigris.org/. It
checksout each single revision from CVS an commit them one by one into
the SVN repo. It preserves dates, tags, authors, etc.
One issue of the CVS->SVN conversion could be if you (Robert) have made
custom cvs scripts that you use for different tasks. But the svn syntax
is very similar to cvs', so maybe only small modifications are
necessary.
On Nov 14, 4:04 pm, "Joakim Simonsson" <joa...@joakims.com> wrote:
> To migrate a CVS repository to a SVN is a really simple task. I
> migrated a huge CVS repo to SVN a couple of years ago.
>
> I used the python script located athttp://cvs2svn.tigris.org/. It
> checksout each single revision from CVS an commit them one by one into
> the SVN repo. It preserves dates, tags, authors, etc.
Thanks this is very useful.
> One issue of the CVS->SVN conversion could be if you (Robert) have made
> custom cvs scripts that you use for different tasks. But the svn syntax
> is very similar to cvs', so maybe only small modifications are
> necessary.
No I don't have any scripts. I don't think Don uses any either.
Did you come across issues with file types such as .dsp file endings,
image files etc?
Any other gotcha?
Robert.
http://www.ddj.com/showArticle.jhtml;jsessionid=V0QIDST0QIFW2QSNDLPCKHSCJUNN
2JVN?articleID=184405776
-Paul
Jose L.
On Nov 14, 5:08 pm, robert.osfi...@gmail.com wrote:
> Hi Joakim,
>
> On Nov 14, 4:04 pm, "Joakim Simonsson" <joa...@joakims.com> wrote:
>
> > To migrate a CVS repository to a SVN is a really simple task. I
> > migrated a huge CVS repo to SVN a couple of years ago.
>
> > I used the python script located athttp://cvs2svn.tigris.org/. It
> > checksout each single revision from CVS an commit them one by one into
> > the SVN repo. It preserves dates, tags, authors, etc.Thanks this is very useful.
>
> > One issue of the CVS->SVN conversion could be if you (Robert) have made
> > custom cvs scripts that you use for different tasks. But the svn syntax
> > is very similar to cvs', so maybe only small modifications are
> > necessary.No I don't have any scripts. I don't think Don uses any either.
No, no problems with dsp files endings that I am aware of.
Binary files, images etc, are much better handled in svn as it uses a
binary diff algorithm. It is only the modifications that are sent over
network between revisions. This is true for both commiting and updating.
The bandwidth, the server, and the server space like this very much :)
> Any other gotcha?
Well, decide a good svn repo hierarchy.
There are two typical structures of a svn repo. If we merge OpenThreads,
Producer and OpenSceneGraph into the same repository it could look like
this:
/trunk/OpenSceneGraph
/trunk/OpenThreads
/trunk/Producer
/tags/v2.0.0/OpenSceneGraph
/tags/v2.0.0/OpenThreads
/tags/v2.0.0/Producer
/branches/2.0/OpenSceneGraph
/branches/2.0/OpenThreads
/branches/2.0/Producer
Or it could look like this:
/OpenSceneGraph/trunk
/OpenSceneGraph/tags
/OpenSceneGraph/branches
/OpenThreads/trunk
/OpenThreads/tags
/OpenThreads/branches
/Producer/trunk
/Producer/tags
/Producer/branches
The first approach has the advantage of when tagging something, you
automatically get all three projects tagged.
The other approach is good if you want the projects to be more independent.
The best way to figure ouy the best repo-hierarchy is to do a test
conversion and do some test-checkins, test-tags, and test-branches.
The svn-book: http://svnbook.red-bean.com/
--
Joakim Simonsson
>
> I've also tested cvs2svn and works really nice. First you need a fresh
> svn repository and cvs2svn simulates submissions from the cvs
> repository, it is pretty easy to try and do not require any special
> skills. Probably it won't work well with deletes along time ( cvs
> losses history of deleted files, svn not) and I don't know also how
> well works with branches and tags... (Does osg have any tags or
> branches?)
Osg has tags, and the cvs2svn should handle these.
--
Joakim Simonsson
I've also tested cvs2svn and works really nice. First you need a fresh
svn repository and cvs2svn simulates submissions from the cvs
repository, it is pretty easy to try and do not require any special
skills. Probably it won't work well with deletes along time ( cvs
losses history of deleted files, svn not) and I don't know also how
well works with branches and tags... (Does osg have any tags or
branches?)
> Hi Guys,
>
> Is it possible to extract portions of cvs repository to build the new svn
> one from?
Yes. Read: http://cvs2svn.tigris.org/cvs2svn.html "One project at a time".
> I am think about the possibility of having to moving osgProducer and
> associated examples into a seperate svn respository. The code itself
> wouldn't change, just makefiles and projects files. The history would
> be a
> useful thing to carry across in this move.
>
> Perhaps such a split of a project would be best done once in SVN, as SVN
> copes better with directory changes than CVS does.
I agree.
--
Joakim Simonsson
Jose has successfully imported OpenThreads, Producer and
OpenSceneGraph on to the temporary sit he's set up for us on his DH
account. The other options on the server front both support SVN too.
I haven't had a chance to to compile off them yet, but so far
everything looks to have imported. 'll play with it more at the
weekend.
Robert.