info-cvs
[Top][All Lists]
Advanced

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

Re: Q: Moving files from one repository to another


From: Rickard Parker
Subject: Re: Q: Moving files from one repository to another
Date: Mon, 30 Jul 2001 17:55:18 -0400

"Luna, Glen" wrote:
> 
> We are in the process of moving a repository from one machine to another.
> 
> During the move, a root within the repository on the old machine will be
> renamed on the other.

I moved a repository like this last year.  It was to a new system and
a different directory.

I think what you plan on doing will work (checking out a new working
directory from the new machine and then moving files from the old
working directory to the new) but you missed an alternative way of
doing the move.

The developer's old working directories will contain sub-directories
named CVS that store in files the name of the system and the
repository from which the files were checked out.  When the developers
attempt to checkin their files the checkin will go to the old
repository on the old system (if still possible) or it will refuse to
continue with the checkin if not.

I wrote a script (no copy availble now) that went and modified the CVS
files in the working directory to point to the new CVS system and
root.  Each developer ran the script to rehome his working directory.
This meant that they did not have to checkout a new working directory
and copy modified files from the old working directory into the new.
They did not have to recompile either.

I expect someone will give you a tip on how to modify the information
in these files for the move.  I want to pass on some other tips.

Consider placing the the root of the new repository in /cvsroot or
/cvs or something of that ilk.  I actually use /cvsroot and that is a
link to another directory.  This allows me to have a repository
restored in a different directory on a different disk in case of a
disk failure. I can then repoint the link to the new real location and
developers do not have to change their CVSROOT environment variable to
continue.

Also consider having your system administrator setting up an alias so
connections to a system named "cvs" will actually go to your new
respository system.  This allows the system administrator to do a
repointing of "cvs" to a backup system in case the main system fails.

If you do both these things then the developers can reset their
CVSROOT environment variable to :ext:cvs:/cvsroot just once for your
upcoming move and you can arrange future moves of the repository
system and cvsroot directory without having to bother the developers
again.

Regards,
   Rick Parker



reply via email to

[Prev in Thread] Current Thread [Next in Thread]