[cvsnt] Any migration caveats between CVSNT versions?

Bo Berglund bo.berglund at telia.com
Wed Oct 18 22:32:17 BST 2006


On Wed, 18 Oct 2006 16:49:30 -0400, "Paul Bennett"
<paul.w.bennett at gmail.com> wrote:

>My Google-foo appears to be failing me, and the Wiki doesn't seem to be  
>easy for me to navigate. The question, it seems, falls to the newsgroup:
>
>I have an existing and aging CVSNT server running 2.0.58d on Win2K
>
>I have a shiny, new CVSNT server running 2.5.03 (Scorpio) Build 2382 on XP
>
>I want to migrate the repositories from the old machine to the new machine.
>
>Assuming I move the hostname and IP address to the new machine as well, is  
>it really as simple as a file-level copy of the repository contents, and  
>pointing the new server at the copied repositories?

Yes, it is as simple concerning the actual data (RCS) files stored.

But you might want to start out by *creating* a new empty repository
on the new server and give it a name that is the same as the repo on
the old server. This will create and populate the CVSROOT control
module and you will have all of the new script files there. This is
the only way to get these.

Then copy all of the data RCS files and folders to the new repository
from the old one.

Now the second step will be to check out the CVSROOT of the new server
to a sandbox somewhere and do the same for the old server (should be
done before the migration).
Then copy the CVSROOT files with a higher revision number than 1.1
from the old to the new sandbox. (rev 1.1 means the default
non-modified file CVS puts there on initialization)
Then look at these script files and edit them as needed to make them
compatible with the new server.
What you should look out for is the paths in the scripts, in the old
server backslashes were OK but they are no longer allowed, they are
escape chars now. So you have to change them all to forward slashes.

Of course if these scripts call external programs like Perl or
CVSMailer you have to install these as well on the new server.

Once done you can commit the edited CVSROOT files and you are nearly
done.

A final check would be to look at the CVSROOT/passwd file in the old
server (it is not checked out so you have to go to the actual server).
If it contains stuff like a nuumber of login specs then you should
copy it over to the new CVSROOT on top of an existing passwd file (it
is probably not there at this time).
>
>Is it advisable to upgrade CVSNT on the old server before copying the  
>data, for instance? Are there any other possible or probable opportunities  
>for me to screw this up royally?

Installing or uninstalling a CVSNT server version will do exactly zero
on the repository itself. Changes in the RCS file format due to a
newer server will be done on a file by file basis as they are
accessed.
So there is no need to update anything on the old server you are
anyway retiring.

HTH

/Bo
(Bo Berglund, developer in Sweden)


More information about the cvsnt mailing list