RE: CVS opinions

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: David Demland
Date:  
To: plug-discuss
Subject: RE: CVS opinions
I think the answer to your question is a question: Do you want version
control or do you want a Software Configuration Management (SCM)? For the
most part if you want version control both CVS and VSS offer the same basic
features. I have used both for extensive time periods and have found that
both have good points and bad points. When selecting one over the other you
need to understand what your objects for the long term are.

Version control allows for a development centered approach. This works when
the business processes are young and immature. In this environment the focus
is on “just getting the code out” not necessarily “what is the system doing
and in what time frame will it be completed”. It is not unusual in this
environment for code to be produced quickly, but projects seem to always be
out of control. A good example of this is everyone making whatever changes
they want when they want.

In a system centered approach, the over all system is looked at and change
is more controlled. In this environment code output is lower, but the
projects are under more control. A business that has this type of control
tends to be a more mature business, form a process stand point, and thus
projects are delivered closer to projected timelines, closer to defined
requirements, and most often with less feature creep. In this environment
change comes only after some sort of analysis.

Once you know what your long term goals are it is easy to see what tool
fits. Both tools do a good job at version control of source code files.
Although VSS does say it supports binary files, it does not do the best job
with them. I have found that overall CVS does even worst with binary files.
This means that if you are tracking all your supporting files: compilers,
libraries, word processing files, etc., that are part of the project - a SCM
approach, VSS will do better. If change comes more ad hoc, CVS will better.

GUI or not to GUI that is the question. I have found that people with a
strong PC background like GUIs and people with a stronger Unix type
background tend to like command line interfaces. I have written wrappers for
VSS to allow command line interface, and I have used a GUI for CVS. I am not
sure that either of these issues are a problem or not, I think that they are
more of personal choice.

Moving files from one project to an other may be easier in CVS than VSS, but
both support this feature. Both allow the merging of changes and both branch
code bases. These areas are about the same. They both fail miserably to
merge two development versions back into one main branch, but I think that
this is due to the fact that there has yet to be a system to understand how
to do this well from a SCM standpoint.

VSS allows for a required check out to edit a file. This is a strong feature
if the development environment is one of controlled change. The labeling for
a build identifier is better in VSS than in CVS, as well as the process of
recreation of a build from a label. Not that these features do not exist in
CVS, but they are not as flexible.

In version 4 of VSS, the repository had many problems with stability. In
version 5 it was more stable, but I had some problems with both. Once I
moved to a version 6 repository I did not have these types of problems. Just
a point to remember.

In closing I would like to say that both tools have their strengths and
weakness. What will define which is best to use will come down to what are
your long term goals. These are just some of my thoughts.

David Demland

-----Original Message-----
From:
[mailto:plug-discuss-admin@lists.plug.phoenix.az.us]On Behalf Of Don
Calfa
Sent: Monday, February 23, 2004 9:54 AM
To:
Subject: CVS opinions


What is everyone's opinion on CVS? I've heard a lot of bad yet it's
still widely used.

I have a situation where we are currently using Microsoft VSS which also
seems to be part of Server 2003 now. The developers 'hate' VSS and want
something else. Their history with other Source Control systems also
have poor reviews from them. None of them have used CVS so CVS sounds
attractive to them. The other attractive note about CVS is that our Mac
clients can now have source control.

I've been given a 'go' to investigate CVS, do some installations,
backups, catastrophic failures of server, restores, etc...
I'd like to see some opinions on it because I've never heard "CVS is
great!". Either we go ahead and convert all our VSS to CVS or just put
up with VSS.

If we go with CVS, I can justify getting a new server and also have
Postfix running on it to get rid of our spam.
---------------------------------------------------
PLUG-discuss mailing list -
To subscribe, unsubscribe, or to change you mail settings:
http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss

---------------------------------------------------
PLUG-discuss mailing list -
To subscribe, unsubscribe, or to change you mail settings:
http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss