"Tanton Gibbs" <[EMAIL PROTECTED]> writes:

> > TG> Does anyone know why I keep getting this:
> > TG> $ cvs diff > diff.out
> > TG> cvs server: failed to create lock directory for
> `/cvs/public/parrot/Parrot'
> > TG> (/cvs/public/parrot/Parrot/#cvs.lock): No such file or directory
> > TG> cvs server: failed to obtain dir lock in repository
> > TG> `/cvs/public/parrot/Parrot'
> > TG> cvs [server aborted]: read lock failed - giving up
> >
> > TG> Both cvs co and cvs update work fine.
> >
> IM> Looks like you have no permissions to check in.
> 
> But I shouldn't need ci privledges to do a cvs diff should I?

No you needn't ci privledges to make a diff (at least not the last
time I did it).

The problem is the ancient directory "Parrot". This was long ago moved
to lib/Parrot. This move was done by moving the directory on the CVS
server. cvs update does not fail on this missing directory but issues
a warning: 
cvs server: Updating Parrot
cvs server: cannot open directory /cvs/public/parrot/Parrot: No such file or directory
cvs server: skipping directory Parrot
This messages is very well hidden between Updating ... messages, so
will normaly not be recognized.

If you use cvs update -dP, and the directory is empty it will then be
deleted and never cause trouble any more. Unfortunatly there are some
autogenerated files in this directory which are not deleted by make
clean, so the directory survives the update.
For cvs diff the missing directory on the server is not just a warning
but a fatal error. 

Solution: rm -rf Parrot (but make sure there is
nothing left in the directory you wanted to keep ;-)).

Bye
boemmels

-- 
Juergen Boemmels                        [EMAIL PROTECTED]
Fachbereich Physik                      Tel: ++49-(0)631-205-2817
Universitaet Kaiserslautern             Fax: ++49-(0)631-205-3906
PGP Key fingerprint = 9F 56 54 3D 45 C1 32 6F  23 F6 C7 2F 85 93 DD 47

Reply via email to