Talk:Source Code Control System

message: Here's something I posted to the TUHS list last November (2015) that you might enjoy:
Since you asked, here's the true story of how I came up with the delta encoding, a story never before told.
I was living in a garden apartment in Sayreville, NJ, and at night would walk my girlfriend's dog along a hillside just outside our front door. It was usually cold, I didn't like the dog (still don't like dogs), and hated dodging the piles of dog shit while he tugged on the leash. So, as a coping mechanism, I used to let my mind wander, and one evening it was wandering and wondering about a problem I was struggling with, which was how to store the source and the deltas all in the same file. (It was a "data set," on the IBM OS/360 system we were using--we weren't on UNIX yet.)
Anyway, no doubt simultaneously with this unpleasant animal taking a shit, I came up with idea of surrounding pieces of text with markers. (The algorithm itself is documented in my original 1975 paper, which you can read about here: http://basepath.com/aup/talks/SCCS-Slideshow.pdf.)
(Wouldn't this be an even better story if I said that the little piles of dog poop on the hillside looked like markers in the soft glow of a full moon? It's not true, but perhaps I'll tell it that way if the occasion arises in the future.)
When I got inside, I started to sketch out how the markers might work, and came up with interesting observation that insertion start/end markers obviously nested, but deletion start/end markers did not nest with insert start/end markers. This is obvious if you think about it the right way: When you delete, the text you're deleting could have been added at various times, but when you insert, the inserted text is always added at the same time.
I didn't have replacement markers; insert and delete were enough, I thought.
I kept fooling around with the idea until I had an algorithm that I thought would work to retrieve any version with a single pass. (It's in the paper, referenced above.)
To prove the algorithm to be correct, I enumerated all possible cases of insertions mixed in with deletions. I don't recall how many cases I had, but I think it was around 20 or 30. Then I painstakingly went though every case, making sure the algorithm produced the right answer. This was a rare example of me doing actual work.
Coding it up, as I remember, was very easy, as the scheme is pretty simple. I'm sure I had it running in SNOBOL4 in a day or two. Redesigning SCCS in C for UNIX came maybe a year or so later, but the algorithm remained the same.
Larry [McVoy] very kindly says: "SCCS has interleaved deltas. It's a brilliant design that has far far better performance than anything else out there."
Maybe it was brilliant, but I can tell you that I was just trying to pass the time while that stupid dog did his business.
Rochkind (talk) 05:12, 18 February 2016 (UTC)
replies: text: This is a really nice story. Would you allow me to have a copy of the text at: http://sccs.sourceforge.net/ Schily (talk) 11:31, 18 February 2016 (UTC)

text: Thank you, I intended to include the link to the PDF anyway. I can add a second link to the top level page as well Schily (talk) 17:34, 18 February 2016 (UTC)
thread_title:  The Story of How SCCS Was Invented 

message: *MOVE because it would match how (CVS)Concurrent Versions System and (RCS)Revision Control System are titled. 132.205.45.148 21:57, 27 Apr 2005 (UTC)
replies: text: Done. Lachatdelarue (talk) 22:17, 28 Apr 2005 (UTC)
thread_title: WP:RM

message: Why were my links to Marc Rochkind's web log deleted?  The note says they are "vanity links", but the log entry discusses Marc's recollections of creating SCCS.  I think they are relevant to this article and I would like to see them included. —The preceding unsigned comment was added by Seitz (talk • contribs) .
:I'm sorry that I forgot to sign my previous comment.
:Is there some way to include the link in question in this article?  I found them useful to learning about SCCS, and I think others would, too.  Should I put it under "External Links"?  Seitz 19:27, 19 February 2006 (UTC)
replies: text: Note that the "I hear voices talking about me" reference link is currently (02-Mar-2011) not working, but it can be found at the bottom of the page here: http://www.basepath.com/marcblog/2005_06_01_archive.html  —Preceding unsigned comment added by 174.137.229.165 (talk) 18:10, 2 March 2011 (UTC)
thread_title:  Rochkind web log links 

message: I happened to recall that UNIVAC EXEC 8 had versioned files, which could predate SCCS.  The feature was accessed by the "elt" processor, which could store up to 63 versions in an element (and wrap around when there were more).  EXEC 8 was released in 1964.  I don't see a source which backs up the comment that SCCS was the first such system. Tedickey (talk) 10:50, 7 April 2010 (UTC)
thread_title:  first source code revision control system 

message: As far as I can tell, there is an official SCCS included with UNIX, which is not the same as the version linked here by User:Schily.
In my opinion, his version should be considered a fork, and the software infobox should refer to the original UNIX version, despite it not being actively developed anymore.
--138.246.2.113 (talk) 09:06, 12 July 2011 (UTC)
replies: text: As there is no common source base amongst UNIX vendors, any SCCS version from any UNIX vendor must be seen as a private fork. The SCCS version described in this article is based on the most popular and most featurefull version available (the one previously maintained by Sun). Unlike the private versions from UNIX vendors, this version offers a common sharable source that has been tested for working correctly on all major UNIX platforms. Unlike the private version from UNIX vendors, this version is maintained and will soon support distributed development. --Schily (talk) 10:15, 12 July 2011 (UTC)
replies: text: As usual, no WP:RS has been provided, and the context of your edits is self-promotional, detracting from the topic TEDickey (talk) 10:44, 12 July 2011 (UTC)
replies: text: See WP:CRYSTAL for other issues with your edits TEDickey (talk) 10:56, 12 July 2011 (UTC)
replies: text: As usual no constructive contribution from User:Tedickey... --Schily (talk) 10:59, 12 July 2011 (UTC)

text: That seems to be the usual practice, lacking WP:RS, e.g., from vendors indicating that "official SCCS" has been deprecated in favor of Schilling's fork. TEDickey (talk) 09:10, 12 July 2011 (UTC)

text: Please understand that as long as the original UNIX versions such as Solaris, HP-UX and IBM AIX ship a different SCCS version (even if they ship three different versions, they are official - this is why I now wrote "various" as maintainers, acknowledging the fact that there is more than one version), we cannot allow you to claim that you are the current maintainer. Please refrain from doing such promotional edits as per Wikipedia:Conflict of interest. Please also leave mentionings of other versions such as GNU CSSC in place. Its existence and relevancy is sound. If you want to get listed as the official version here, provide WP:RS that your version is replacing the existing SCCS versions in the major Unix operating systems and have an independent party perform the edit for you. Please read and adher to WP:Suggestions for COI compliance and stop to WP:POVPUSH and personally attack other editors. Your insults against TEDickey are not acceptable, please read WP:Civility. --138.246.2.113 (talk) 17:24, 12 July 2011 (UTC)
replies: text: Oh, and please also understand that I'm trying to keep the article neutral, and obviously I am giving your version of SCCS an appropriate place there. Just not the prime position, since the other SCCS have the bigger market share, don't they? --138.246.2.113 (talk) 17:31, 12 July 2011 (UTC)
replies: text: As you are introducing false claims, it is hard to believe that you are interested in keeping the article neutral. --Schily (talk) 09:14, 13 July 2011 (UTC)
replies: text: Your repeated personal attacks on other editors detract from any message you may be considering TEDickey (talk) 09:24, 13 July 2011 (UTC)
replies: text: What you are doing can definitely be seen as personal attacks, I however only try to correct false and unsourced claims. --Schily (talk) 09:31, 13 July 2011 (UTC)
replies: text: There aren't any sources for your remarks.  Referring to "false claims" sounds as if you're calling the other editors liars, which is undoubtedly an attack.  If you do not mean your remarks to be taken in that light, you should retract them. TEDickey (talk) 09:40, 13 July 2011 (UTC)
replies: text: If you did not introduce unsourced claims, this discussion would have been much easier. If you like to get correct information, you may need to ask people who know the facts. I did e.g. ask Eric Allman about the legal state of SCCS (see below) and I use many other trustworthy sources. It seems to be a common mistake made by US people to believe they have been personally attacked even though there was only a fact based discussion and it seems to be a common mistake from US people to reply with personal attacks on arguments from a fact based discussion. Do not make this mistake... --Schily (talk) 09:56, 13 July 2011 (UTC)

text: It's not much of a source: it refers to Dynix, Solaris 2.6, Solaris 8 and SCO OpenServer, and makes a few vague comments about "many other versions of Unix".  Ignores AIX, HPUX, Tru64.  Some of the minor differences cited could also be due to the point at which their respective systems forked from AT&T source (as AT&T continued to evolve) rather than changes in the forks themselves.  To make an interesting discussion, a source without vague comments which covers the systems which are POSIX-certified would be useful (and a table where the reader could see where data is known to differ) TEDickey (talk) 22:32, 30 June 2014 (UTC)
thread_title:  Unofficial releases 

message: There have been attempts from IP 138.246.2.113 to introduce false claims on licensing.
SCCS was closed source until December 19 2006. At that time, SCCS was released under the Common Development and Distribution License by Sun Microsystems.
If SCO was not bought by Caldera Linux, SCCS would have been released under the BSD license in 2001, but this did not happen.
SCCS is part of PWB and SCCS sources are definitely not part of the UNIX sources even though often kept in a single directory tree. SCCS sources have been put on the CSRG CDs that contain the BSD UNIX SCCS history between 1978 and 1994. The code on these CDs is however not OpenSource and the SCCS sources that can be seen in various FreeBSD CVS repositories cannot be distributed legally to people that do not own a related AT&T source code license.
The only legally distributable SCCS source code is the one that is based on the code that has been made available by Sun in December 2006. --Schily (talk) 09:28, 13 July 2011 (UTC)
replies: text: The AT&T source code license and CDDL make at least two licenses, which can be described by the shorthand "various" (= more than one!). I bet the various Unix vendors will offer additional licensing options. So what exactly is my "false claim"? --138.246.2.113 (talk) 10:40, 13 July 2011 (UTC)

text: I don't see a particular "false claim".  Schily's standard response here as elsewhere is to assert that people who offer different opinions (or sources) have defective reasoning (understatement) TEDickey (talk) 10:44, 13 July 2011 (UTC)
replies: text: The AT&T source code license means just Closed Source which is the other alternative mentioned already. "Various" has the common accepted meaning of "close to many" and thus cannot be seens as correct. --Schily (talk) 12:02, 13 July 2011 (UTC)
replies: text: "Various" has more than one meaning.  It appears that "many" is a secondary meaning; the primary meaning (from the word's origin) simply means "different".  You should WP:AGF and ask the editor for clarification rather than attacking him. TEDickey (talk) 22:19, 13 July 2011 (UTC)
thread_title:  Licensing 

message: Reading the thread on the discussion, it's apparent that there was little interest on Sun's part in making SCCS free, that (lacking a better source than those given), that it was figuratively tossed into the box simply as an afterthought.  TEDickey (talk) 12:07, 10 November 2011 (UTC)
replies: text: Yes, but User:Schily needs this, so his SCCS-Fork is more prominently placed than the Heirloom Project SCCS-version (which apparently is the essentially unmodified Sun code). In my opinion, the two SCCS-based projects should be treated the same. --Chire (talk) 18:09, 10 November 2011 (UTC)

text: Sure, the context and intent of the edit was plain enough.  But the source doesn't support in any sense the implication that Sun did that because Schilling asked.  Perhaps there's another source which gives Sun's rationale for the content which they relicensed. TEDickey (talk) 18:29, 10 November 2011 (UTC)
replies: text:  They did not as far as I can tell. SCCS apparently was released as part of a "Developer Products Consolidation (DevPro)" update including libm, medialib, make, sccs  within the overall process of releasing OpenSolaris code  There is no attribution to Schily as far as I can tell. Here is the closest I could find to an announcement: . There are four names thanked, but Schily is not mentioned. Oh, and in 2007 he claimed he had been asking for the SCCS sources since 2000. Doesn't sound to me as it was an immediate reaction to his requests. --Chire (talk) 22:35, 10 November 2011 (UTC)

text: I happened to notice another edit, stating in his change comment "I've used SCCS on Linux since 1997".  That doesn't seem consistent with Schily's edits in this topic. TEDickey (talk) 23:26, 10 November 2011 (UTC)
replies: text:  I believe he has had access to SunOS/Solaris/UNIX sources long before they were open source. Either through Fraunhofer, University or for developing cdrtools on SunOS/Solaris. But of course without being able to re-publish them. --Chire (talk) 11:53, 11 November 2011 (UTC)

text: That wouldn't make them "widely available" as asserted in Schily's most recent edit of the page.  To be "widely available", the reader understands that to mean that the program is provided as a package in the various distributions.  I seem to recall seeing a non-official rpm for Fedora, but nothing for anything else.  Perhaps Schily has made a list, for consideration.  (I've also noticed a disparity between Schily's assertions about POSIX versus the responses that he gets from the POSIX people - perhaps a separate thread should be started to weed out the claims versus facts) TEDickey (talk) 12:07, 11 November 2011 (UTC)
replies: text:  Schily's SCCS also seems to diverge from original SCCS a lot. From his web page, the next version will use a ("deliberately") incompatible file format (apparently to fix some upcoming date issues). Also, he says that SCCS is faster than RCS, but also that his SCCS is significantly faster than the original SCCS. So it may well be that RCS is faster than original SCCS, which would make many of the published assertions correct. IMHO, he should be using a different name, such as schily-sccs. --Chire (talk) 11:09, 13 November 2011 (UTC)
replies: text: Renaming it would lose the implied authority of the "POSIX" label.  However, lacking other information, it's likely that the only benchmarks Schily has used are those that select out the corner cases where SCCS is "faster" than RCS.  Likewise, I've not come across any credible measurements that deal with it in depth.  TEDickey (talk) 11:38, 13 November 2011 (UTC)
replies: text: I've tried to clean up these things. I chose to call Schily version a fork, since he openly announces to become incompatible. --Chire (talk) 21:19, 14 November 2011 (UTC)

text: That's an improvement TEDickey (talk) 00:22, 15 November 2011 (UTC)
thread_title:  In 2005 and 2006, Jörg Schilling asked... 

message: Editor's change comment asserts that SCCS was "dominant" until "1990".  That comment is unsourced.  Most sources agree that SCCS was supplanted by RCS and/or CVS, though the timescale for this is vague.  The sentence should be amended to reflect available WP:RS, rather than simply removing it. TEDickey (talk) 10:56, 22 March 2012 (UTC)
replies: text: RCS was close to completely unused before 1989 because it was non-free software. If you are able to name us other source code controls systems than SCCS that have been in use in the 1980s, you are of course welcome! The use after 1990 was based on the free availability of CVS and the wrong claims about speed comparisons between SCCS and RCS. Schily (talk) 13:21, 12 November 2014 (UTC)

text: I began using RCS in May 1988, which was distributed by Sun.  That's referring to my changelog, of course. There were other CM systems which you have demonstrated inexperience with, but I do not need to list them here. TEDickey (talk) 10:12, 13 November 2014 (UTC)
replies: text: Which changelog? Schily (talk) 15:06, 14 November 2014 (UTC)
replies: text: [here] is a starting point. TEDickey (talk) 11:57, 15 November 2014 (UTC)
replies: text: I cannot see anything there that could help in the current discussion. Schily (talk) 14:19, 18 November 2014 (UTC)

text: My comment was made in the context of your repeated assertion that rcs was not distributed before ~1990.  Sun distributed RCS 4 as part of SunOS in 1988. TEDickey (talk) 23:28, 18 November 2014 (UTC)
replies: text: You are of course free to verify this claim. Up to now it is unverified and I remember that I had to compile RCS even in the 1990s when there was the rare case to have a need for RCS.  Schily (talk) 11:13, 19 November 2014 (UTC)

text: Your memory doesn't agree with the history which I recorded for my project.  TEDickey (talk) 00:27, 20 November 2014 (UTC)

text: Lacking a suitable WP:RS, e.g., a WP:Verifiable set of release notes (or first-hand report, e.g., from one of the rcs developers) for the first release of rcs by Sun on SunOS, what I have to go on is the discussions with my co-worker, who provided feedback on my rcs wrappers -- as well as the fact that I began work on this in May 1988. TEDickey (talk) 01:32, 20 November 2014 (UTC)
thread_title:  dominant version control system 

message: SCC compliant and 'SCC' evokes 'SCCS' and the ability to make sources interchangeable among different vendors. This was a non trival problem at one time (when 'BUNCH', 'mainframe', and 'mini' meant state-of-the-art). Even Microsoft thought so, as late as 1989. I would think have thought that citations like the ones just reverted make a difference to the article.  Apparently not. --Ancheta Wis    (talk  | contribs) 14:57, 14 February 2015 (UTC)
replies: text: ??? SCC is a Microsoftism and no standard, in special it is unrelated to SCCS. As mentioned on your talk page already, if you like to write something helpful for Microsoft related software, you can do this on the related article. Schily (talk) 19:27, 14 February 2015 (UTC)
replies: text: No, you have it backward; SCCS influenced others, even Microsoft; even IBM's ClearCase was SCC compliant, as were multiple other version control systems. See Rochkind's citation of IBM's CLEAR as one of the influences on SCCS. I would think that this article would be interested in these influences. --Ancheta Wis    (talk  | contribs) 19:39, 14 February 2015 (UTC)
replies: text: Rochkind did not mention Clearcase, as Clearcase did not exist in 1975. Please note that there is no relevance to SCCS even if other programs may follow this Microsoftism. Schily (talk) 19:55, 14 February 2015 (UTC)
thread_title:  SCC compliance 

message: Two obvious problems with that as a source: (a) it was written in 1997, and (2) it was not written as a neutral survey of the state of the art, but rather to promote a different tool. TEDickey (talk) 19:41, 10 September 2016 (UTC)
thread_title:  VRCS paper as a source 

message: It strikes me (212.44.43.190 (talk) 22:35, 27 January 2017 (UTC)
replies: text: I edited the article to include sccs delget, but it may be a better idea to add a pointer to the recent manpages: . Pages 2..4 give an overview of the available commands.   Schily (talk) 13:37, 30 January 2017 (UTC)
thread_title:  SCCS Basic Commands 

message: The referenced paper does not actually say SCCS was initially released in 1972.  It says
"... when we began development of it (in late 1972)"
and "The first release of SCCS was coded, debugged, and tested by one person
in less than three months." and goes on to say that there was a six-month trial after completing the prototype.  That would make the initial release in 1973 (agreeing with a later comment about 1973).  The paper does not identify the actual developer of this initial version, but in the acknowledgments section cites three different developers who "worked with the author on the design and coding" TEDickey (talk) 22:43, 9 September 2019 (UTC)
thread_title:  Initial release 1972 

message: The given source does not say that.  Rather, it indicates that Rochkind developed a prototype (e.,. proof of concept) and was able to get one moderately large group (one group of 100 developers out of several tens of thousands at that point in time) to use it for some trial period.  The previous revision wasn't so blatantly promotional. TEDickey (talk) 21:04, 7 May 2020 (UTC)
replies: text: Thank you.  I withdrew my changes, because the references that I was think of, don't actually identify the name of the source control system used. Perhaps I'll find more detail another time. Kbrose (talk) 22:29, 7 May 2020 (UTC)

text: sounds good TEDickey (talk) 22:55, 7 May 2020 (UTC)
thread_title:  source for "developed SCCS in SNOBOL4 at Bell Labs for maintaining the large source code base" 

message: I can't find anythign related to SCCS on this website. It would make much more sense to link to http://sccs.sourceforge.net/ , maybe not as an official repository, but it is probably the best available now. 93.254.27.45 (talk) 08:36, 10 June 2022 (UTC)
thread_title:  Opengroup "official repository"