RE: Question about directory re-use (cvs status error)

2005-06-10 Thread Todd Foster

Ok,
 This error goes away if I make the CVSROOT/EmptyDir group writeable.

However, I'm curious why CVS had to resort to using the EmptyDir for this 
directory?  The information contained in the CVS/Root and CVS/Repository 
files was enough to correctly

identify the directory in the repository.

Oh well.  Because it works, my questions are purely academic now.

One more observation I have on this is that there is a cvs behavioral 
difference between doing these two things:


cvs status tools/# This was producing my EmptyDir error 
message


cd tools/
cvs status .   # This works just fine without an 
error (and without using EmptyDir)


Todd



We've got several projects that include some global tools.  At this 
transition,
I am trying to take one of the tools that we've developed in our project, 
push
it out into the global area and check it back out into our project's 
working
directory.  I would really like to put this global tool back in the same 
directory
so all of our Makefiles and scripts don't have to change to know about a 
new
directory.  Most things seem to work correctly, however, I'm running into 
an error

with 'cvs status' when I do so.

Please let me know if you have any thoughts on why I am seeing the error at 
the

bottom.

Thanks!

Todd

Everything is scripted but here are the manual steps that I have done to 
reproduce

this problem:

[[ Checkout our project ]]

miller --> cvs -d :pserver:@myserver:/proj/myproj/cvsroot co -d Test  
proj_name


This creates several directories but what I'm interested in is in the tools 
directory.


miller --> ls -l tools/
drwxrwxr-x2 todd  design   4096 Jun  9 14:15 CVS
drwxrwxr-x3 todd  design   4096 Jun  9 14:15 mytool

miller --> ls -l tools/mytool/
drwxrwxr-x2 todd  design   4096 Jun  9 14:15 CVS

[[ Remove the old project-specific tool (now empty with all files in the 
Attic) ]]


miller --> cvs release -d mytool
You have [0] altered files in this repository.
Are you sure you want to release (and delete) directory `mytool': y

[[ Checkout the new global tool back into the same directory ]]

miller --> cvs -d :pserver:@myserver:/proj/global/cvsroot co -d mytool 
tools/mytool

cvs checkout: Updating mytool
U mytool/File1
U mytool/File2
U mytool/File3
U mytool/File4
U mytool/File5
U mytool/File6

Everything seems fine at this point, however, if I go back to the root of 
my working

copy and do a 'cvs status tools' I get:

miller --> cvs status tools
cvs status: Examining tools
===
File: .keepdir  Status: Up-to-date

  Working revision:1.1
  Repository revision: 1.1 
/proj/myproj/cvsroot/proj_name/tools/.keepdir,v

  Sticky Tag:  (none)
  Sticky Date: (none)
  Sticky Options:  (none)

cvs status: Examining tools
cvs status: failed to create lock directory for 
`/proj/global/cvsroot/CVSROOT/Emptydir' 
(/proj/global/cvsroot/CVSROOT/Emptydir/#cvs.lock): Permission denied
cvs status: failed to obtain dir lock in repository 
`/proj/global/cvsroot/CVSROOT/Emptydir'

cvs [status aborted]: read lock failed - giving up

[[ I can easily change the permissions on the Emptydir directory, however I 
would like to know why
  CVS is using this directory in the first place since this has never 
happened before. ]]








___
Info-cvs mailing list
Info-cvs@gnu.org
http://lists.gnu.org/mailman/listinfo/info-cvs


Question about CVS-SSH

2005-06-10 Thread Huaer XC
Dear CVS users:

I am a newbie in this field. And I am trying to setup CVS on a Linux
Mandrake server, and maintain my codes through SSH by different PCs
including Win-XP and Linux system. (I followed a instruction on the
following link:
http://mariner.cs.ucdavis.edu/slackware/doc/applications/cvs-over-ssh.txt)

Now I did the following things in my server. 
1) I have setup CVSROOT in my account "/home/cvs", and a repository
named "ABC" has been imported.
2) then I generate public key authentication for the cvs account by
ssh-keygen -b 2048 -t dsa
3) copy /root/.ssh/id_dsa.pub into the directory ""/home/cvs/.ssh2"
4) generate ".ssh2/authorization", and put the following two lines
into the file:
key id_dsa.pub
Options command="/usr/bin/cvs server",no-x11-forwarding

At the remote workstation with Debian Linux system,  I did the following:
1) in .cshrc, add the following two lines 
   setenv CVS_RSH ssh
   setenv CVSROOT :ext:[EMAIL PROTECTED]:/home/cvs
2) Copy "id_dsa.pub" from the server and put it in the ".ssh2" directory.
3) echo "idkey id_dsa" > ~/.ssh2/identification

After I re-login to the remote workstation, and run:
cve checkout ABC
It return the following error info: 
cvs [checkout aborted]: Cannot check out files into the repository itself

Please help what I was doing wrong in the above steps, and please give
me more suggestions if possible, many thanks.

Huaer


___
Info-cvs mailing list
Info-cvs@gnu.org
http://lists.gnu.org/mailman/listinfo/info-cvs