[ On Tuesday, February 15, 2000 at 13:55:28 (-0500), John Macdonald wrote: ]
> Subject: Re: CVS File Locking
>
> I just re-read through the Berliner paper:  "CVS II: Parallelizing
> Software Development", Brian Berliner, Prisma Inc.  I presume that
> this is the paper that Greg was referring to in another post in which
> he said "read the paper".

Yup.

> It talks about concurrent development.  It describes the discovery
> that concurrent development actually works, and that they hardly ever
> had to do manual merges, and that those manual merges were almost
> always simple to resolve.
> 
> I didn't see anything that even seemed to say that it was a design
> goal to forever onward prohibit any non-concurrent activities from
> ever being possible in conjunction with parallel development.  It
> simply said that concurrent development had proved fully adequate,
> having no significant drawbacks and some major advantage.

The claim that concurrent development is sufficient is stated as a
justification to why CVS only supports the copy-modify-merge paradigm,
just as Sun's NSE tool which they refer to as the documented source of
the idea.  I have always interpreted that to mean that CVS forces
concurrent development and to date I don't remember anyone giving any
substantial rebuttal to that interpretation.

One can easily conclude that since the author found concurrent
development to be a correct and useful approach that indeed he found no
reason to allow serialised development at the same time and thus within
the confines of CVS there is no room for any form of support for
serialised development.

> The cvs design is *not* carved in stone.  Just because a proposal
> does not match the original design goals of cvs does not justify
> automatically rejecting it from consideration.  Such a proposal must
> be considered on its actual merits, rather than the Gospel of the
> Design of CVS.

Well no, of course it's not.  However as I and others have tried to
show, changing CVS' to support non-concurrent development will require a
lot more thought and upheaval than just adding locks.  After all why do
you think the hack of using "cvs admin -l" is so unsuccessful!?!?!?
It's certainly not because it's hard to use.

In the end we have also shown that it is not necessary for CVS to have
hard locks in order to deal with a few unmergable files.  Whether you
agree or not relates directly to how well you buy into the claim that
the copy-modify-merge paradigme is correct and useful for software
developers.

-- 
                                                        Greg A. Woods

+1 416 218-0098      VE3TCP      <[EMAIL PROTECTED]>      <robohack!woods>
Planix, Inc. <[EMAIL PROTECTED]>; Secrets of the Weird <[EMAIL PROTECTED]>

Reply via email to