Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!iuvax!uxc.cso.uiuc.edu!uxc.cso.uiuc.edu!gistdev!joe From: joe@gistdev.UUCP Newsgroups: comp.software-eng Subject: Re: Source Code Control Message-ID: <8100005@gistdev> Date: 23 Jun 89 16:30:00 GMT References: <133@tirnan.UUCP> Lines: 42 Nf-ID: #R:tirnan.UUCP:133:gistdev:8100005:000:2420 Nf-From: gistdev.UUCP!joe Jun 23 11:30:00 1989 > Written 11:26 pm Jun 22, 1989 by pegasus.ATT.COM!psrc in comp.software- > One useful method of doing this is to use "slists". An slist is a list > of which versions of which source files you're using at any given time. > (In the SCCS world, it's a "what" of the sources*, plus some header > information with percent strings in it.) An slist is generated > mechanically from the source files, and itself kept under source code > control. This is exactly how our implementation of SCCS product control works. We keep an "slist" for each module with all of the versions of the source files which were used to build it. This is great for versions of individual programs, but what about the product? We also keep a product "slist". We have standards to be sure that the appropriate labelling is compiled into each released binary (or even source or text file), and we then do a "what" on the entire product tree into a master "slist", which itself is controlled by SCCS! So, for example, a customer has a problem in the Foo Editor which is part of our WhizBang product. The customer has WhizBang version 4.2. I pull the list of binaries in WhizBang 4.2 and search (grep -- after all, this is under UNIX) for the label which says "Foo Editor" (it's SCCS Module Name, which is is the master slist), and find it was version 2.1. I can then pull the source to the 2.1 Foo Editor, which our tools produce by using "get" to get the appropriate version of each file based on the program slist, and I'm in business. As stated before, even if subsequent releases have been made since 2.1 of the Foo Editor, I can still make a branch version to fix this for the customer. This kind of control is invaluable. I have worked in environments where there was no control of any kind, and noone had the slightest idea what customers had. I can't even imagine going back to that kind of environment today! ------------------------------------------------------------------------------- Joe Brownlee | Captain, please -- not in front of the Klingons. GIST, Inc. | -- Mr. Spock, Star Trek V 1800 Woodfield Dr. | Pay attention to what I say, and you might start a trend. Savoy, IL 61874 | ARPANET: joe%gistdev@uxc.cso.uiuc.edu (217) 352-1165 | UUCP : {uunet,pur-ee,convex}!uiucuxc!gistdev!joe -------------------------------------------------------------------------------