The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > UNIX for Advanced & Expert Users
Google UNIX.COM


UNIX for Advanced & Expert Users Advanced UNIX and Linux questions go here. Expert-to-Expert.

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
Repository Observer 0.9.14 (Default branch) iBot Software Releases - RSS News 0 05-27-2008 06:30 PM
how to move a file from one server to another server using FTP in shell script? forevercalz Shell Programming and Scripting 4 10-26-2005 10:53 PM
Move root disk to new server VirginiaSA SUN Solaris 18 05-20-2005 02:48 PM
How can i move data files from a server to unix folder shah2 Shell Programming and Scripting 1 03-01-2004 02:38 PM

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 07-02-2008
Registered User
 

Join Date: Sep 2007
Posts: 5
CVS: move part of repository (branch) to SVN server

Hi all,

We have CVS server running for few years with absolutely no problems.
Because of conditions not depending on me, I'm forced to move some part of our repository to another server (SVN). I need to move ONLY one branch from CVS server to SVN server. The branch must be moved with all changes made on it. I can move entire repository with absolutely no problem, but do not know how to move part of the branch with changes (cvs checkout will not work ofcourse ).

Thank you in advance for your help.
Reply With Quote
Forum Sponsor
  #2 (permalink)  
Old 07-02-2008
Moderator
 

Join Date: Sep 2002
Location: Hong Kong, China
Posts: 1,422
My impression is that it may be possible with a four-step migration (but to be frank I am not too sure about its viability due to my limited exposure to branches):

1. Migrate the entire CVS repository to a temporary SVN repo (you know how to do it better than I do)
2. Get a snapshot of the entire repository (using "svnadmin dump")
3. Because in SVN a branch is just a sub-tree of the repository, you can filter the sub-tree out of the repo using svndumpfilter, to produce a snapshot dump that covers that branch you want only.
4. Finally, load the filtered snapshot to the real SVN repo (of course, create a temporary repo to test it first!) using svnadmin load.

You can find more about svndumpfilter here (and also svnadmin):

Repository Maintenance

Good luck!
Reply With Quote
  #3 (permalink)  
Old 07-02-2008
Registered User
 

Join Date: Sep 2007
Posts: 5
One big problem is that entire repository is about 1.5 TB, so i cannot migrate it to SVN that easy ...
Also there are people using it every day, and i cannot stop it.
Reply With Quote
  #4 (permalink)  
Old 07-02-2008
Moderator
 

Join Date: Sep 2002
Location: Hong Kong, China
Posts: 1,422
If it's really that big .... I'd suggest you to ask the experts on subversion's mailing list and post a solution that works for you back here. I'll be very interested to know how to do that. You may need to use third-party tools (if exists) for that if the programs in the subversion distribution do not satisfy your requirements .....
Reply With Quote
  #5 (permalink)  
Old 07-02-2008
Registered User
 

Join Date: Jul 2008
Posts: 1
cvs2svn

You should take a look at a project called cvs2svn. Here you will find a utility for SVN conversion from CVS (as the name indicates), and there is a section in the user manual that offers suggestions for "Deciding How Much to Convert". They offer pros/cons and advice on how to proceed for various options. Take a look: cvs2svn: cvs2svn Documentation
Reply With Quote
  #6 (permalink)  
Old 07-02-2008
Moderator
 

Join Date: Sep 2002
Location: Hong Kong, China
Posts: 1,422
However, if I have not misinterpreted the documentation for cvs2svn, that does not appear to have an option for migrating a CVS branch only. My understanding is in CVS, unlike in SVN that a branch is a copy and just works like the trunk except on a separate tree, CVS branches are rooted with a revision on the parent branch and it will not be very surprising to me if indeed cvs2svn does not support migrating a branch only directly.

Correct me if I am wrong.

I guess the original poster already knows about cvs2svn because that is mostly the way to convert a CVS repo to SVN ....
Reply With Quote
  #7 (permalink)  
Old 07-09-2008
Registered User
 

Join Date: Sep 2007
Posts: 5
Quote:
Originally Posted by cbkihong View Post
However, if I have not misinterpreted the documentation for cvs2svn, that does not appear to have an option for migrating a CVS branch only. My understanding is in CVS, unlike in SVN that a branch is a copy and just works like the trunk except on a separate tree, CVS branches are rooted with a revision on the parent branch and it will not be very surprising to me if indeed cvs2svn does not support migrating a branch only directly.

Correct me if I am wrong.

I guess the original poster already knows about cvs2svn because that is mostly the way to convert a CVS repo to SVN ....
Yes I do know about cvs2svn.

First of all it turns out that the person which requires the SVN conversion is marketing director. So we reviewed what he NEEDS exacty and ...

We solved the problem in not very sciantific way ...
Here is how:
1. I copied one part of the things that we need to cvsroot/tmp/svn directory
then used simple bash script with cp and cvs rtag commands to delete all unnecessery branches and tags .. (I got the branches / tags from cvsweb interface)
2. copied second part, and repeated 1, then tirth part ... and so on ...

3. After long time of copy / cvs rtag -d (allmost 24h ).... we had one not very big (approx. 1G) repository in cvsroot/tmp/svn.
This repository was compressed, and sent to my colege, for SVN transformation on remote server.

My personal conclusion:
Before proceed, make sure you know that the person that wants huge changes to well working (and proven) system knows what he / she wants )

Cheers.
Reply With Quote
Google UNIX.COM
Reply

Thread Tools
Display Modes




All times are GMT -7. The time now is 06:02 PM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008 The CEP Blog All Rights Reserved -Ad Management by RedTyger Visit The Global Fact Book

Content Relevant URLs by vBSEO 3.2.0