info-cvs
[Top][All Lists]
Advanced

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

Re: CVS_SERVER


From: Matthew Riechers
Subject: Re: CVS_SERVER
Date: Thu, 02 Aug 2001 08:54:21 -0400

Mike Castle wrote:
> 
> On Wed, Aug 01, 2001 at 03:09:13PM -0700, Mark D. Baushke wrote:
> > In any case, you might want to look back at my original implementation
> > of root.c. If a user explicitly forced a 'cvs -d cvs-spec' it would
> > trash all the existing data in the CVS/Root file and replace it with
> > the information on the -d option. Later users choose to replace this
> > capability with one that will just ignore the CVS/Root contents by
> > setting an environment variable. I'm not sure this is a better way for
> > a user to use the tool or not, but at least it is flexible enough for
> > most folks to use cvs.
> 
> find . -type f | grep CVS/Root | xargs rm
> cvs -d NEWROOT up
> 
> I'd never thought of that until now.
> 
> I'd never paid any attention to the solutions that people have posted to
> "fixup" the checked out sandbox when a repository moved, so I'm not sure if
> this was ever a proposed technique or not.
> 
> address@hidden:05pm]~/a(529) find . -type f | grep CVS/Root | xargs cat
> /home/mcastle/foo
> /home/mcastle/foo
> /home/mcastle/foo
> address@hidden:05pm]~/a(530) find . -type f | grep CVS/Root | xargs rm
> address@hidden:05pm]~/a(531) cvs -d :local:~/foo up
> cvs [update aborted]: CVSROOT ~/foo must be an absolute pathname
> address@hidden:05pm]~/a(532) cvs -d :local:/home/mcastle/foo up
> cvs update: Updating .
> cvs update: Updating CVSROOT
> cvs update: Updating test
> M test/sdkdocs40.exe
> ? test/bar
> address@hidden:05pm]~/a(533) find . -type f | grep CVS/Root | xargs cat
> :local:/home/mcastle/foo
> :local:/home/mcastle/foo
> :local:/home/mcastle/foo
> 

That seems to only work for local repositories. There's probably an
obvious reason for this...

This should work for any working directory (it doesn't use cvs at all):

find . -name CVS |awk '{print "echo $CVSROOT >" $1 "/Root"}'

The output will overwrite each CVS/Root file in the current tree with
$CVSROOT.
Just append '|sh' to execute the output.

-Matt



reply via email to

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