Re: CVS - Lock File

2005-05-04 Thread Jesper Louis Andersen
Quoting Alan Finlay ([EMAIL PROTECTED]):

I am in a bashing mood today. You are target, sorry.

> Sometimes waiting an hour 
> or two and working on something else so the updates can be done 
> sequentially can save the bother of a merge.  

So, let me give you an example. One big file. Person A works in the top of it
and person B works in the bottom of it. Bam!

Also, if you have to restructure your work to work on something else, you might
very well waste more than just 2 hours of work. This is for every locking 
problem.

> Branches in CVS are too heavyweight to do this and 
> when using CVS I am tempted to use a private revision control system to 
> manage my own checkpoints when the CVS branch is being shared by the team.

This is true criticism. 

Bias - I am using Darcs for most of my projects. I am also one of those 
academic heads who likes functional languages much more than C or Java.

-- 
jlouis



Re: CVS - Lock File

2005-05-04 Thread David Terrell
On Wed, May 04, 2005 at 09:12:42AM -0600, Tobias Weingartner wrote:
> On Wednesday, May 4, "Alan Finlay" wrote:
> > I have done significant work with ClearCase and CVS in a software 
> > development team environment, and some minor work with other revision 
> > control tools.  Team size for ClearCase was around 20 developers, and with 
> > CVS around 10 developers.  For an open source project like OpenBSD, CVS is 
> > quite likely the best choice, but for other situations ClearCase has 
> > advantages.
> 
> *chuckle*  Those are small teams.  I've worked on projects (both open
> and commercial) that had significantly more developers than what you
> mention above.  Locking has *never* been an issue for development.  It
> has, however, been an issue for various PHBses that needed some way to
> satisfy their hunger for control over the people that actually get the
> coding done.

I work on a small team, and locking (I won't mention the tool we're using,
but let's just say it sucks) just means that people edit changes without
checking the file out and then overwrite each other's changes.

CVS++

On subversion, I don't have a problem with it, especially now that you
can compile it without BSDDB.  It does have the abhorrent new apache
license though.



Re: CVS - Lock File

2005-05-04 Thread Tobias Weingartner
On Wednesday, May 4, "Alan Finlay" wrote:
> I have done significant work with ClearCase and CVS in a software 
> development team environment, and some minor work with other revision 
> control tools.  Team size for ClearCase was around 20 developers, and with 
> CVS around 10 developers.  For an open source project like OpenBSD, CVS is 
> quite likely the best choice, but for other situations ClearCase has 
> advantages.

*chuckle*  Those are small teams.  I've worked on projects (both open
and commercial) that had significantly more developers than what you
mention above.  Locking has *never* been an issue for development.  It
has, however, been an issue for various PHBses that needed some way to
satisfy their hunger for control over the people that actually get the
coding done.


--Toby.



Re: CVS - Lock File

2005-05-04 Thread Marco Peereboom
  Also the branches provide a record of what changes were made  
for a bugfix or feature with easy access to a list of all the files  
affected and which versions of those files.  Another benefit of  
lightweight branching is that developers can use a private branch  
and checkin incomplete work at checkpoints convenient to themselves  
without worrying that others will be affected by this work in  
progress.  Branches in CVS are too heavyweight to do this and when  
using CVS I am tempted to use a private revision control system to  
manage my own checkpoints when the CVS branch is being shared by  
the team.

ClearCase also allows you to make an unreserved checkout (i.e. one  
which does not lock the file at all, or to checkout a file already  
locked exclusively by someone else), however by doing this you  
clearly signal to the team that you are responsible to clean up any  
consequences (e.g. this is no excuse for a lost update).

To get the full benefit of ClearCase you should use dynamic views,  
the snapshot views are inconvenient since checkouts of minor  
branches copy every file to a local workspace and are too slow to  
create.  Dynamic views only copy a file from the repository when  
you checkout the file, the files you have not changed are accessed  
in a way similar to NFS using the remote repository as the server.   
You need dynamic views for the flexibility to use ClearCase  
efficiently since changing views (i.e. altering the viewspec which  
determines what a view sees) is then efficient.  This makes quick  
branch comparisons and builds which lock out or pull in changes  
defined in various ways a convenient way to work.

The downside for ClearCase is that it is both time and money  
expensive.  In terms of time, it requires a dedicated maintainer or  
significant training for the whole team since ClearCase is complex  
to administer, especially if you are using Multisite (for mirror  
repository synchronization), and/or using dynamic views.

Personally I would avoid using cost of the product as the  
determining factor in a commercial environment - its usually false  
economy.  I wouldn't use ClearCase unless it has a champion in the  
team since it is complex when used effectively.  A team accustomed  
to locking may find the switch to CVS uncomfortable, but if they  
have been accustomed to revision control of directories they will  
be downright annoyed if given a system without it.

Alan Finlay
- Original Message - From: "Roy Morris"  
<[EMAIL PROTECTED]>
To: 
Sent: Tuesday, May 03, 2005 4:50 AM
Subject: CVS - Lock File


Our company has started to look at CVS as an alternative to our  
current
products. When I suggested using CVS I was told not having a lock  
file
or method of knowing who was working on some code was going to be
unmanageable. (and nearly beaten to death, by the developers)

Since Openbsd has the OpenCVS project, I thought you all might be
the best people to ask about this. Is this really going to be an  
issue
for a handful of developers?

Thanks in advance for your comments.
Roy Morris



Re: CVS - Lock File

2005-05-04 Thread Alan Finlay
ed if given a system without it.

Alan Finlay
- Original Message - 
From: "Roy Morris" <[EMAIL PROTECTED]>
To: 
Sent: Tuesday, May 03, 2005 4:50 AM
Subject: CVS - Lock File


Our company has started to look at CVS as an alternative to our current
products. When I suggested using CVS I was told not having a lock file
or method of knowing who was working on some code was going to be
unmanageable. (and nearly beaten to death, by the developers)
Since Openbsd has the OpenCVS project, I thought you all might be
the best people to ask about this. Is this really going to be an issue
for a handful of developers?
Thanks in advance for your comments.
Roy Morris



Re: CVS - Lock File

2005-05-04 Thread Jesper Louis Andersen
Quoting Peter Valchev ([EMAIL PROTECTED]):
> > Have you looked at subversion? A colleague of mine is fanatical about it,
> > athough we don't use it here.
> 
> You mean the one that has 23 build dependencies, and only compiles on
> i386?  Hah.

That is the primary problem. The second problem is the problems it solves
are not that interesting. The minor touchups are atomic commits (a good thing)
and faster branching. But currently, that is about it. I would rather have 
soeen a good refactoring of the CVS code. I can see that it is what I am going 
to get.

-- 
jlouis



Re: CVS - Lock File

2005-05-03 Thread Garance A Drosihn
At 9:55 AM -0600 5/3/05, Peter Valchev wrote:
 > Have you looked at subversion? A colleague of mine is fanatical
 > about it, although we don't use it here.
You mean the one that has 23 build dependencies, and only compiles
on i386?  Hah.
This sounds odd.  I use subversion on FreeBSD/i386, FreeBSD/sparc64,
and FreeBSD/PPC without too much trouble.  The freeBSD port includes
a few knobs to turn of the biggest dependencies, so maybe I benefit
from using those.  This is the dependency tree that I have:
subversion-1.1.4
|\__ perl-5.8.6_2
|\__ libiconv-1.9.2_1
|\__ gettext-0.14.1
|\__ gdbm-1.8.3_1
|\__ expat-1.95.8_1
|\__ db42-4.2.52_4
 \__ apr-nothr-gdbm-db4-1.0.1_1
Note that I create all my subversion projects as '--type fsfs', so
I don't really use the berkleyDB port.  But I thought I'd leave it in
there even though I don't use it, just in case I need to access some
other subversion project which does use it.
I'm still getting used to subversion, but so far I like it.  It does
address some of the problems that Mark mentioned.  I don't know how
well it would work for a project as large as OpenBSD, but it is now
the "production SCM" for samba.org.  So, people are beating up on it
in the real-world for some large-scale projects.
--
Garance Alistair Drosehn=   [EMAIL PROTECTED]
Senior Systems Programmer   or  [EMAIL PROTECTED]
Rensselaer Polytechnic Instituteor  [EMAIL PROTECTED]


Re: CVS - Lock File

2005-05-03 Thread L. V. Lammert
At 09:55 AM 5/3/2005 -0600, Peter Valchev wrote:
> Have you looked at subversion? A colleague of mine is fanatical about it,
> athough we don't use it here.
You mean the one that has 23 build dependencies, and only compiles on
i386?  Hah.
Didn't say *I* liked it, just that a colleague of mine preaches it all the 
time - if it's a solution to the problem at hand, it's worth considering, 
warts and all.

Lee


Re: CVS - Lock File

2005-05-03 Thread Peter Valchev
> Have you looked at subversion? A colleague of mine is fanatical about it,
> athough we don't use it here.

You mean the one that has 23 build dependencies, and only compiles on
i386?  Hah.



Re: CVS - Lock File

2005-05-03 Thread L. V. Lammert
On Tue, 3 May 2005, Marc Espie wrote:

> To expand on my prior message, CVS is missing some useful features,
> but locks is definitely NOT one of them.
>
Have you looked at subversion? A colleague of mine is fanatical about it,
athough we don't use it here.

I seem to recall that it address some of the problems you have with CVS.

Lee


  Leland V. Lammert[EMAIL PROTECTED]
Chief Scientist Omnitec Corporation
 Network/Internet Consultants   www.omnitec.net




Re: CVS - Lock File

2005-05-03 Thread Donald Bruce Stewart
espie:
> The main feature I'm missing is the ability to manipulate patchsets
> as an independent object. I often have several independent changes
> spanning several files, and there's nothing in cvs that allows me
> to select  one change independently from the others, and not forget
> any file. Having to go through diff + patch is creepy and error-prone.

darcs is very good in this respect. Source trees consist of sets of
patches, and there's a nice patch formalism for deciding when patches
can be safely applied.

darcs send/darcs apply solve the diff/patch mess (when dealing with
patches via email).

-- Don



Re: CVS - Lock File

2005-05-03 Thread Marc Espie
To expand on my prior message, CVS is missing some useful features,
but locks is definitely NOT one of them.

The main feature I'm missing is the ability to manipulate patchsets
as an independent object. I often have several independent changes
spanning several files, and there's nothing in cvs that allows me
to select  one change independently from the others, and not forget
any file. Having to go through diff + patch is creepy and error-prone.

The second main feature I'm missing is the ability to import stuff on
any branch, not just the main branch, and to work off-main branch WITHOUT
disturbing the main branch. CVS has got an annoying array of bugs and
limitations in that area.

The third missing feature is the well-known one of not being able to
preserve history across renames.

The last feature that would be useful is O(1) tagging...


Gee, no locking in there...



Re: CVS - Lock File

2005-05-02 Thread Mitch B. Parker
Roy,

The most important issue, IMHO, is that your team communicates enough to do 
branching and merging.

It sounds from the way the developers referred to the "lock file" that you're 
considering moving up from Visual SourceSafe.  Am I correct on this?

The mode of development you're working on will dictate how revision control 
will work.  If you're working on anything involving a Microsoft solution, and 
using Visual Studio .NET, you're really going to have to work on team 
communication first, because that bastardization of an IDE changes tens of 
files behind the scenes and doesn't tell you.  You're going to have to keep a 
master set of project files to do builds if you use a SCM solution other than 
SourceSafe.  Working on anything VS.NET related with a tool other than VSS 
requires extremely competent development managers to handle the builds and the 
various quirks that you will encounter.

If your team actually can communicate and knows how to use diff utilities, CVS 
will be fine.  If your team works on Oracle, C/C++ outside of .NET, Java, or 
IDEs that don't hide all the project details, CVS will work really well.

If you're in an Oracle and/or UNIX shop, it should fit right in with how those  
environments expect things to be done.

Thank you,

Mitch



-Original Message-
From:   Roy Morris [mailto:[EMAIL PROTECTED]
Sent:   Mon 5/2/2005 2:50 PM
To:     misc@openbsd.org
Cc: 
Subject:CVS - Lock File
Our company has started to look at CVS as an alternative to our current
products. When I suggested using CVS I was told not having a lock file
or method of knowing who was working on some code was going to be
unmanageable. (and nearly beaten to death, by the developers)

Since Openbsd has the OpenCVS project, I thought you all might be
the best people to ask about this. Is this really going to be an issue
for a handful of developers?

Thanks in advance for your comments.


Roy Morris






CONFIDENTIALITY NOTICE: This electronic message is intended to be viewed
only by the individual or entity to whom it is addressed. It may contain
information that is privileged, confidential and exempt from disclosure
under applicable law. Any dissemination, distribution or copying of this
communication is strictly prohibited without our prior permission. If the
reader of this message is not the intended recipient, or the employee or
agent responsible for delivering the message to the intended recipient, or
if you have received this communication in error, please notify us
immediately by return e-mail and delete the original message and any
copies of it from your computer system.



Re: CVS - Lock File

2005-05-02 Thread Matthias Kilian
On Mon, May 02, 2005 at 09:10:00PM +0200, Marc Espie wrote:
> If you start running into conflicts, it usually means people don't commit
> often enough... and if they don't, it might be because intermediate code
> is not stable/does not compile, which bodes real bad for the project as
> a whole...

Or (to second your Java/eclipse rant on ports@) you've a bunch of
clueless people not only denying communication but even using
braindead eclipse features as "Override and Commit".

[I could shoot the guy who added this thing to eclipse]

Clear signs of urge of unemployment:

- Using graphical tools as in eclipse for CVS access (especially that
  override-shit).

- Commits without reasonable log messages.

- Commits that contain two lines with semantical changes but that change
  the complete file due to reformatting.

- Muttering as "that's *my* code" or "I can't work on code formatted
  like this, so I reformat."

Sorry for being offtopic, but out there in the wildness of
enterprise/bullshitbingo/java/buzzword world, shit doesn't just
happen, but actually accumulates to infinite stupidity.

Ciao,
Kili, only clueless once a month



Re: CVS - Lock File

2005-05-02 Thread Daniel Ouellet
Roy Morris wrote:
Our company has started to look at CVS as an alternative to our current
products. When I suggested using CVS I was told not having a lock file
or method of knowing who was working on some code was going to be
unmanageable. (and nearly beaten to death, by the developers)
Since Openbsd has the OpenCVS project, I thought you all might be
the best people to ask about this. Is this really going to be an issue
for a handful of developers?
Thanks in advance for your comments.
Roy Morris
Hi Roy,
Not that I know a lots about it, but looks to me looking from the 
outside that having locking on CVS would mean, only one would work on 
something and then reduce the collaborations between developers as well 
as slowing the developments and ideas are not share between multiple 
heads! (:>

Or to be a bit more crud, in business, may mean that if I make something 
bad, looking my section, mean other can't see my mistakes, so that I am 
never force to improve them, or correct them and this way,, I keep 
protecting my job and no talents, or lack of will not show up to often 
this way! (:>

May be I am all wrong, but locking would go in the oppose directions as 
to communicate and good design that comes from share ideas or process 
between multiple people where the best idea prevail oppose to mine 
because I lock the section of code.

Plus, improvement couldn't be done by others as it is lock!
My $0.02 worth from someone that most likely have no clue of what he is 
talking about, but only look at the logic of the process and the benefit 
of learning from others!

Or if I think I am God on earth and that I hold the truth, then yes I 
guess, may be, locking would be something I want as to not have anyone 
playing in my code! (:> But hey may be many thinks they are God and 
want locking in their tree! (:>

Just an outside point of view.
Daniel


Re: CVS - Lock File

2005-05-02 Thread Marc Espie
Lock files don't replace good communication.

There are very little conflict issues in OpenBSD, considering the
developers cover the world, litterally.

A small projet where developers can talk to each other, live, shouldn't
have any problems, even without locks.

If you start running into conflicts, it usually means people don't commit
often enough... and if they don't, it might be because intermediate code
is not stable/does not compile, which bodes real bad for the project as
a whole...



Re: CVS - Lock File

2005-05-02 Thread Jim Razmus
* Roy Morris <[EMAIL PROTECTED]> [050502 14:59]:
> Our company has started to look at CVS as an alternative to our current
> products. When I suggested using CVS I was told not having a lock file
> or method of knowing who was working on some code was going to be
> unmanageable. (and nearly beaten to death, by the developers)
> 
> Since Openbsd has the OpenCVS project, I thought you all might be
> the best people to ask about this. Is this really going to be an issue
> for a handful of developers?
> 
> Thanks in advance for your comments.
> 
> 
> Roy Morris
> 

CVS implements revision control.  Communication is left as exercise for
the users.

Just my opinion.

Jim



Re: CVS - Lock File

2005-05-02 Thread Theo de Raadt
The entire idea behind CVS is to *not lock*.

The entire idea is that people write their own changes, then
collaborate on integration, out of band.

There is no locking, and there never will be.

Locking is used as an excuse by people who don't know how to communicate.


> Our company has started to look at CVS as an alternative to our current
> products. When I suggested using CVS I was told not having a lock file
> or method of knowing who was working on some code was going to be
> unmanageable. (and nearly beaten to death, by the developers)
> 
> Since Openbsd has the OpenCVS project, I thought you all might be
> the best people to ask about this. Is this really going to be an issue
> for a handful of developers?
> 
> Thanks in advance for your comments.
> 
> 
> Roy Morris



CVS - Lock File

2005-05-02 Thread Roy Morris
Our company has started to look at CVS as an alternative to our current
products. When I suggested using CVS I was told not having a lock file
or method of knowing who was working on some code was going to be
unmanageable. (and nearly beaten to death, by the developers)
Since Openbsd has the OpenCVS project, I thought you all might be
the best people to ask about this. Is this really going to be an issue
for a handful of developers?
Thanks in advance for your comments.
Roy Morris