info-cvs
[Top][All Lists]
Advanced

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

Re: Locking support


From: James Youngman
Subject: Re: Locking support
Date: 21 Aug 2001 22:49:27 +0100
User-agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7

"Noel L Yap" <address@hidden> writes:

> >> I still think a good process would include use of the patches to
> >> support more confidence in concurrent development.
> >
> >My initial reaction is that either your process works, or you
> >developers need training, or your process needs changing.  But I guess
> >there's room for a fourth option, "You're using the wrong tools".
> 
> Well, think about it, if actual concurrent development occurs
> rarely,

I didn't say that, and that is not what my stats show.  They show that
_conflicts_ were rare.   No information at all was gathered on how
many files were concurrently edited.  I have no idea how many files
were concurrently edited, or how often.

With CVS, concurrent edit != conflict, as I'm sure you know.

> then there's not much harm in telling users right away that there's
> someone else editing the file.  Also, this process works for both
> non-mergable and mergable files whereas the usual way may cause
> problems with non-mergable files.
> 
> Oh, yeah, regarding changing "cvs edit" so that it enforces
> mandatory locks, "cvs ci" will also need to enforce them.  

In my experience with tools supporting reserved checkouts, developers
do sometimes forget to check files out for editing.  They just rename
their working file, check the file out for editing, and overwrite the
working file with their changes.  Bye-bye to someone else's change.

That way, they get all same things they percieve as the drawbacks of
the concurrent editing provided by CVS, without the safety net which
CVS provides -- it won't let you throw away someone else's changes by
accident.  Edit-checkout-overwrite-checing will indeed silently
discard someone else's change.  It's just that some people prefer to
think that this doesn't happen.

In order to be successful, software engineering tools must STILL work
well in an environment where everybody does their best to do the right
thing but forgets, say, 2% of the time.  

> Even then, nothing really prevents users from circumventing the
> system (even when using straight RCS).

Well, almost no automated revision management tool can outwit a
determined miscreant (or even a determined idiot).  One of the
premises of development tools, though, is that the developers are
people of goodwill.

Computer science is about computers.  Software engineering is about
people. 

-- 
James Youngman
Manchester, UK.  +44 161 226 7339
PGP (GPG) key ID for <address@hidden> is 64A95EE5 (F1B83152).



reply via email to

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