[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CVS file permissions problems
From: |
Mark D. Baushke |
Subject: |
Re: CVS file permissions problems |
Date: |
Tue, 06 Apr 2004 09:49:21 -0700 |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Ruben Diez <rdiez@activenav.com> writes:
> Hi again:
>
> I just wasted considerable time installing CVS because of file-permission
> issues. I must admit I'm no expert, but I feel more can be done in the
> manual to help the likes of me busy people.
>
> In my pserver CVS system, I'm user "rdiez", and Linux has automatically
> created an "rdiez" group too. I'm also a member of the cvs_repos_users
> group.
>
> Whenever I check anything in, CVS changes the ,v file so that it's owned by
> me, but it also changes the ,v file group, something I didn't expect. So I
> ended up with this:
>
> ls -la blah_blah/my_dir
> -rwxrwx--- 1 root cvs_repos_users 37316 Apr 1 17:50 my_lovely_file,v*
> -rwxrwx--- 1 rdiez rdiez 8548 Apr 1 17:50
> I_just_checked_in_a_change.h,v*
>
> The key thing missing from the manual is that other CVS users, even if they
> are members of the cvs_repos_users group, need at least read access to file
> "I_just_checked_in_a_change.h,v" in order to check in further changes, or
> even to "cvs update" on them.
>
> This is despite the fact that my_dir's permissions look like this:
>
> drwxrwx--- 5 root cvs_repos_users 4096 Apr 2 14:03 ./
>
> Why CVS has to change the file's group is beyond me. But at least if it's
> documented more clearly it would help.
>
> Thanks a lot, and keep up the good work,
> Ruben
On Linux, you will need to do
chgrp cvs_respos_users blah_blah/my_dir
chmod g+s blah_blah/my_dir
to fix your problem. cvs is assuming that the filesystem has group
persist for newly created files. All new versions of a file go thru
being created as a temporary ,foo, before being renamed as foo,v as the
last step. Many operating systems do not require the directory to have
the set-gid bit set for this behavior, but both Linux and Solaris do.
-- Mark
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (FreeBSD)
iD8DBQFAct+R3x41pRYZE/gRAqkZAKCN4q8UTZdm+zAiSLRQS3GfF7mfswCgqSAX
VpRBaV/36rus/VANx/6/UoY=
=PVTP
-----END PGP SIGNATURE-----