info-cvs
[Top][All Lists]
Advanced

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

Re: CVSROOT not used


From: Mark D. Baushke
Subject: Re: CVSROOT not used
Date: Tue, 16 May 2006 23:35:59 -0700

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Steve Sapovits <address@hidden> writes:

> Mark D. Baushke wrote:
> 
> > What does this command tell you?
> >   cat CVS/Root
> > It should be a copy of your $CVSROOT as specified when you checked
> > out the original tree.
> 
> This is it.  I had started down that path after my last
> post but you gave me better direction.  The issue is that
> I checked out as another user.

It is generally considered prudent to have individual trees for
modification and only use something like another user's tree as
a reference.

If you are able to use the same userid on both the client and server
machines for all of your users, then even the reference tree could be
checked out as 

        :ext:host.name/repos/pathname

and let the username on the client be used on the server. Then anyone
who wanted to do a 'diff' would use their own userid on the server to
do the work.

> cvs diff seems to try running using $CVSROOT but against the CVS/Root
> user on the remote server. My rsh permissions were not set right for
> that one.

This is not how it works. 'cvs diff' uses

If CVSROOT is :ext:host.name/repos/pathname

  $CVS_RSH host.name $CVS_SERVER server

or, if CVSROOT is :ext:address@hidden/repos/pathname

  $CVS_RSH host.name -l user $CVS_SERVER server

to make the remote connection. The $CVS_RSH program (be it rsh or ssh)
is used to login to host.name as either $USER or the '-l user' specifies
the alternative user to be used.

$CVS_SERVER defaults to 'cvs' and will be found in the $PATH of the
'user' on the remote system.

> 
> To clarify, there are 3 users here:
> 
> (1) A shared user the code was checked out as;
> (2) My user on one system;
> (3) My (different) user on another system.
> 
> I was set up permission-wise to go between my two users but
> not between one of my users and the shared user the code was
> checked out as.  cvs diff appears to run as the CVS/Root user
> at some level.
> 
> What first clued me in here was trying a checkout somewhere
> else.  That worked -- it was only commands like cvs diff that
> run against the checked out code that weren't working.
> 
> My follow-up question here is:  If I 'cvs commit' from that
> same checked out code path, as me and not as the user who
> checked it out, will the check-in be tagged with my user ID?

Yes.

> Also: All the users in this scenario are in the same UNIX group.

That would only be relevant to directory permissions on the server.

        Good luck,
        -- Mark
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (FreeBSD)

iD8DBQFEasRPCg7APGsDnFERApXXAKCA9CKuJn05LLVeN+W/CS8cwi/qXwCcCYa3
Ej/IRGU+qUMl+3T32nnaauQ=
=S7UH
-----END PGP SIGNATURE-----




reply via email to

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