[Top][All Lists]

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

Re: Checking out from multiple repositories [CORRECTION]

From: Wayne_Johnson
Subject: Re: Checking out from multiple repositories [CORRECTION]
Date: Wed, 23 May 2001 16:40:59 -0500


Your right, the sequence:
     cvs -d $Server2 co multmod
     cvs -d $Server1 co multmod/dir1
Does work (once I upgraded to from 1.10 to 1.11.1).

I got sidetracked by the other error (file1 is no longer in the repository).

Thanks again for your help.

address@hidden (Larry Jones) on 05/23/2001 01:32:22 PM

To:   Wayne Johnson/MINN/address@hidden
cc:   address@hidden, address@hidden
Subject:  Re: Checking out from multiple repositories [CORRECTION]

address@hidden writes:
> Here is a test case I wrote to recreate the problem:
> # Now for the real test
> rm -rf multmod
> cvs -d $Server1 co multmod
> cvs -d $Server2 co multmod

You shouldn't checkout the same directory from multiple servers.  CVS
insists that a working directory map to a single repository directory;
it's OK to violate that as far as contained subdirectories, but not
files.  When you checkout from Server2, you get files in the multmod
directory that map to a directory on Server2, but the CVS/Root file is
still pointing to Server1 and CVS gets very confused.  (CVS only allows
this because it presumes you know what you're doing and are just using a
different name or access method for the same repository rather than
specifying a completely different repository.)

Given the directory structure you set up, one way to get a correct
working directory tree would be:

     cvs -d $Server2 co multmod
     cvs -d $Server1 co multmod/dir1

That way you don't try to checkout multmod itself from both servers.

However, that still doesn't create the recursion problem you initially

     bash-2.02$ echo hi >>dir1/file11
     bash-2.02$ echo hi >>dir2/file21
     bash-2.02$ cvs -nq up
     cvs server: file1 is no longer in the repository
     cvs server: file2 is no longer in the repository
     M dir1/file11
     M dir2/file21

Note that CVS correctly finds that files in both subdirectories (one
from Server1 and one from Server2) have been modified.  (The "no longer
in the repository" messages are because of the repository confusion I
noted above.)

-Larry Jones

He doesn't complain, but his self-righteousness sure gets on my nerves.
-- Calvin

Info-cvs mailing list

reply via email to

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