[comp.unix.programmer] Summary: Distributed Development Source Code Control

bcardoza@bubba.prv.npd.Novell.COM (12/18/90)

This is a summary of the responses to a question I posted.

In article <1990Nov28.162243.27167@npd.Novell.COM> I wrote:
> What mechanisms/tools do you use for source code control when there are
> multiple instances of the source code (i.e. several copies on one or
> more machines)?
> 
> I've heard rumors of a front-end to RCS, but don't know anything about
> it.
> 
> Please send responses via e-mail to bryan_cardoza@npd.novell.com; I'll
> summarize to the net if there is sufficient expressed interest.
> (Please forgive me if this was recently discussed or is a FAQ; we have
> a tight expire period, and I don't read this group as often as I
> should.)

First of all, thanks to all of those who submitted their opinions:

	emv@ox.com (Ed Vielmetti)
	cjc@ulysses.att.com (Christopher J. Calabrese)
	wietse@wzv.win.tue.nl (Wietse Venema)
	bglenden@mandrill.CV.NRAO.EDU (Brian Glendenning)
	david@actsn.fay.ar.us (David Summers)
	Erik Baalbergen <erikb@cs.vu.nl>
	kimbo@puppy.eng.ileaf.com (Kimbo Mundy x5550)
	mek@enterprise.udev.cdc.com (Mark Kennedy)
	rob@b15.com (Rob Lemley)
	Lyle Seaman <lws@sununix.comm.wang.com>

The number one suggestion was CVS (Concurrent Version System) that is
part of the GNU stuff.  There was a paper presented on this at the
Winter '90 Usenix.  It is a rich tool set, and is really useful for
those people who add value a vendor-supplied source code product and
are faced with even infrequent source updates from the vendor.

Honorable mention goes to SHAPE, also available from your local source
archive.  It is a large integrated tool set for source control and
build, intended to replace Make and SCCS/RCS, as far as I can tell.
(Lyle Seaman: perhaps, as a user of SHAPE, you can provide additional
input?)

Others mentioned were various and sundry home-brew tools and commercial
products.

To those who pointed out that you should have only one copy of the
source, I think you may have misunderstood what was intended.
Obviously you have only one central master source copy; the place where
the source code control is done.  Yet when several different teams are
working on different portions of a single product, it is often helpful
to have separate working instances of the code to isolate problems
during implementation and debugging.  A team is only considered to be
"done," however, when it has integrated into the central source base
(and tested their changes).

My hope was to find a set of tools that would make good behavior in
this respect the easiest thing to do (i.e., keep people from
experimenting in the master source base), and provide software
configuration management functionality at the same time.

Although we certainly could have used some of the tools mentioned, our
current propensity is to go with our own yet-to-be-developed set of
tools in combination with RCS (or perhaps even good old SCCS).  Alas.

Thanks again for your help.

--
Bryan Cardoza                             <bryan_cardoza@npd.novell.com>
Software Engineer
Novell, Inc.                                   Telephone: (801) 429-3149
Provo, UT                                            Fax: (801) 429-3500