info-cvs
[Top][All Lists]
Advanced

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

Re: Problems with Attic permissions


From: Kaz Kylheku
Subject: Re: Problems with Attic permissions
Date: Mon, 14 Oct 2002 17:30:36 -0700 (PDT)

On Mon, 14 Oct 2002, Anne McCaffrey wrote:

> Date: Mon, 14 Oct 2002 16:32:20 -0700 (PDT)
> From: Anne McCaffrey <address@hidden>
> To: Kaz Kylheku <address@hidden>
> Cc: address@hidden
> Subject: Re: Problems with Attic permissions
> 
> --- Kaz Kylheku <address@hidden> wrote:
> > On Mon, 14 Oct 2002, Anne McCaffrey wrote:
> > > > That's kinda silly.  Any file which has
> > > > ``accidentally'' been removed
> > > > with "cvs rm" can trivially be resurrected with
> > "cvs
> > > > add" and the
> > > > resulting history will show clearly who the
> > guilty
> > > > party is.
> > > > 
> > > > Why use a sledge hammer when a tack hammer will
> > do
> > > > as well?
> > > > 
> > > Date: Mon, 14 Oct 2002 14:04:33 -0700 (PDT)
> > > 
> > > I understand that you may feel this is 'silly' but
> > > that really is beside the point.My original
> > question
> > > was something else, if you noticed.
> > 
> 
> I have not invited any 'thoughts' or 'opinions' on how
> I am using cvs.If you can't answer my question, pls

If you don't want people to evaluate the way you use CVS, then don't
post to the CVS mailing list. It's that simple.

> don't reply;we can go on arguing about the pros and
> cons of someone's practices.I don't see any point in
> it.

The point is that some people who read the mailing list have been using
and admistering CVS for a long time, and hence know what works and does
not. It's better to adopt the sane ways of doing things than to try
forcing some silly ways into working.

> > You said that you were trying to fiddle with
> > permissions on Attic
> > directories in order to prevent users from doing
> > ``cvs rm''.
> 
> I never said that.I use a script to prevent cvs rm.
> We altered Attic permissions to prevent users from
> manually deleting Attic files.

But it's okay to manually delete non-Attic files? Sheesh.

Nobody should be doing anything manually in the CVS repository at
all, except in emergency situations, when there is a problem that
requires repair.  The users have *you* for that, right?

I would simply lock the undisciplined users out of having direct access
to the repository. There are ways of doing that while still giving them
normal Unix accounts on the CVS machine rather than through a hack like
the CVS pserver protocol; for example, you can replace their login
shell with a simple script that only allows CVS operations via ssh and
rsh, but otherwise provides no shell access.

> My question was "Why is cvs trying to read from Attic
> when I do cvs add"

The way CVS works is that within a logical directory, there is just one
namespace that is split between a directory, and an Attic subdirectory.
The Attic is simply a performance optimization; in all respects, the
files in the Attic and the files not in the Attic are logically the
same directory.

Before a new entry is made in the namespace, it is necessary to perform
a lookup not only in the main directory, but also in the Attic. Thus
the Attic directory has to be the subject of a lookup for that name.

The reason the Attic exists is to make main trunk checkout and update
operations faster; these common operations do not have to consider the
contents of the Attic. The Attic portion of the namespace holds
those files which have a dead revision at the head of the main trunk,
and thus logically do not exist on the main trunk head.  It would take
time to open these files, and parse their RCS representation only to
discover that they don't exist; so this ``does not exist'' property is
cached in the namespace via the Attic trick.

So all your fussing over the Attic is simply unproductive attention to
some optimization detail within the internals of CVS, which wouldn't
matter if it was used properly. These directories are not ``user
serviceable parts''. Leave them alone! It's important for them have the
same permissions as their parent. CVS needs to move files into and out
of the Attic as files are removed from or added to the main trunk.
These removals and additions can happen as the result of merging from a
branch, not just as the result of cvs add and cvs rm commands. If you
lock up the Attics, you interfere with branching and merging.





reply via email to

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