[Cvsnt] Using the Repository Prefix

Bo Berglund bo.berglund at telia.com
Tue Apr 2 07:08:22 BST 2002

Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.

On Tue, 2 Apr 2002 02:30:34 +0000 (UTC), "Gates, Donald T"
<DONALD.T.GATES at saic.com> wrote:

>I've run into a problem with using the Repository Prefix that I have not
>seen mentioned here before.
>I'm using Build 57a (client and server) on Win2000 (client and server) and
>WinCVS Beta7 (Build 1).
>In each folder where my files are checked out to on my client system, the
>CVS directories all have a file named "Root" which contains the "old"
>(non-prefixed) repository root. It doesn't matter what I set the CVSROOT
>within WinCVS to, or the CVSROOT environment variable. When attempting an
>operation within WinCVS (updating for example), it ignores these values and
>goes by what is in the Root files.
>Short of traversing my entire directory structure and editing all the Root
>files, how do I take advantage of the Repository Prefix?
>Don Gates

this is how CVS works. You set the cvsroot variable before you chack
out a module then the root is saved in the CVS\Root file that is
automatically created in each directory of the module. The reason is
that CVS must remember from where the module was checked out so it can
be updated and committed to the same place later on. Potentially you
can have many modules checked out from many servers (like I do) and it
would be too error prone to force the users to adjust a local setting
of cvsroot to be correct before each operation on each individual
module. The various passwords are also cached in another local file so
you don't have to log in every time, only when you do a fresh
This scheme works well until the server repository goes off-line,
which is essentially what is done when you introduce the prefix usage.
At this moment there are a few alternatives:

A) Delete local sandboxes and check out the modules fresh with the new
cvsroot setting in place in WinCvs. Works pretty simple and is not a
big hazzle.

B) Use the ChangeRoot macro in WinCvs to change the Root files to the
correct value on all affected modules. A bit more preparation is
needed since the macro needs to be hand edited, but once this is done
it is simple to do. This is probably the better way if you have a
number of modules and also some non-cvs files in the modules.

C) If you have only a few modules checked out but have non-cvs files
inside then you can also go in directly on the Root files and edit the
value. In fact if you edit one Root file in a module tree then you
need only copy this file on top of the remaining ones.


(Bo Berglund, developer in Sweden)
Cvsnt mailing list
Cvsnt at cvsnt.org
http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt https://www.march-hare.com/cvspro/en.asp#downcvs

More information about the cvsnt mailing list
Download the latest CVSNT, TortosieCVS, WinCVS etc. for Windows 8 etc.
@CVSNT on Twitter   CVSNT on Facebook