Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Dec 1998 18:36:03 -0800 (PST)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Joseph Koshy <jkoshy@FreeBSD.ORG>
Cc:        Nate Williams <nate@mt.sri.com>, cvs-committers@FreeBSD.ORG
Subject:   Re: proposal: simple cvs mod to handle shared checked-out source trees 
Message-ID:  <199812030236.SAA20656@apollo.backplane.com>
References:   <199812030154.RAA08114@hub.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
:> >     configuration files.  If I replace /usr/bin/cvs with a wrapper I screw
:> >     up some of the traditional source projects (where we don't want relaxed
:> >     group perms).
:
:> Ok, write a wrapper that checks for -g, and then have it relax the
:> permissions.
:
:With a umask of 00x, you can't prevent users from stomping on each others
:work, without commit log traces / source change history etc.  If this is
:acceptable then why not have one copy of the checked out tree chmod'ed 77x
:and let everyone loose on it?  Why use a source control system in the first
:place?

    We do have one copy off the checked out tree chmod'd 77x, but it is not
    possible for users to cvs commit / checkout on the common tree unless
    the umask is also 00x because if it isn't, CVS will change perms on 
    certain CVS control files in the checked out TREE CVS/ directories 
    that prevent other users from being able to operate on the same tree.

    This way we not only have one copy of the checked out tree, but cvs
    commits also properly log which staff member modified the file last
    presuming that the staff member cvs commits the file after he has
    edited it.

    This method is much more desireable then the RCS mess we were using before.

    Without the hack, CVS can't quite do it.  It comes close, but it doesn't
    quite get there.  Remember, we are not talking about a traditional 
    source archive here.

    It is not desireable to duplicate the checked out tree for each staff
    member for many reasons, including the fact that the checked out tree
    represents active system control files (such as DNS zones and router
    config files).  A separate copy makes the job of adjusting the control
    files too complex... the staff member would have to checkout the file into
    his own private tree, edit it, commit it back, and then cvs update the 
    system 'active' checked-out tree.

    I see no other way to allow multiple members to operate on a common 
    CVS-backed working set.

:> Again, this is a very site-specific change that shouldn't go into
:> FreeBSD, IMO.
:
:Agreed.

    I do not think it is a very site-specific change at all.  How so?  I
    outlined a nicely generalized and wide-ranging problem and solved
    it with the addition of a simple option.  I think it solves the
    generalized problem quite neatly.... the problem of wanting to maintain
    a commmon set of files and yet also keep an audit trail of who modified
    what in an active system environment.

						-Matt
:
:Koshy
:<jkoshy@freebsd.org>
:
:

    Matthew Dillon  Engineering, HiWay Technologies, Inc. & BEST Internet 
                    Communications & God knows what else.
    <dillon@backplane.com> (Please include original email in any response)    

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199812030236.SAA20656>