TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

SCCS roach motel

70 pointsby rdpintqogeogsaa5 months ago

10 comments

aidenn05 months ago
&gt; It should be obvious that I <i>love</i> SCCS, it&#x27;s a dramatically better file format than a patch based one, you can get <i>any</i> version of the file in constant time, authorship can be preserved across versions, it&#x27;s pretty brilliant and I consider myself blessed to be posting this in response to SCCS&#x27;s creator.<p>I have seen Larry make similar claims about the weave format vs. patch-based format many times, and he has also put git firmly in the &quot;patch-based&quot; camp, but I believe the only real effect to git not using a weave is increased time-complexity of &quot;blame&quot; operations.<p>1. Git has constant time access any version of a file as well; the --depth option to the pack algorithm places a constant (but configurable) upper bound on the number of deltas that will need to be applied whenever fetching a blob. Intuitively, it would seem to me that for files with extremely large numbers of changes, this could be faster than extracting the weave, potentially at reduced space efficiency.<p>2. Merges are separate from the commits that effect the change; the lm&#x2F;clem example in TFA would work as expected on git. Merge commits will only show up in the annotation if there were conflicts.
fanf25 months ago
I got into unix after CVS had pretty much displaced SCCS and RCS, but the older per-file version control systems persisted long enough that I had a few close encounters with them.<p>When I took over Cambridge University’s DNS, its code and configuration was still in SCCS, because that was what shipped with SunOS in 1991ish. I converted the SCCS archive via RCS and CVS to git – <a href="https:&#x2F;&#x2F;dotat.at&#x2F;@&#x2F;2014-11-27-uplift-from-sccs-to-git.html" rel="nofollow">https:&#x2F;&#x2F;dotat.at&#x2F;@&#x2F;2014-11-27-uplift-from-sccs-to-git.html</a> – which was a fairly entertaining exercise. (Sadly the links in that blog post are mostly broken.) I even used those conversion scripts more than once! <a href="https:&#x2F;&#x2F;dotat.at&#x2F;@&#x2F;2016-07-19-uplift-from-sccs-to-git-again.html" rel="nofollow">https:&#x2F;&#x2F;dotat.at&#x2F;@&#x2F;2016-07-19-uplift-from-sccs-to-git-again....</a> (That repository ended up with at least three distinct root commits, one for the main DNS history, one for the Ansible setup that started with DHCP and later grew to handle DNS too, and later the separate vanity domain DNS setup.)
linsomniac5 months ago
I once had one of my users come to me: &quot;I accidentally typed &quot;ci filename&quot; rather than &quot;vi filename&quot;, it asked me some questions and I answered them, and now my file is gone.&quot; I told her: &quot;Don&#x27;t worry, I know exactly what happened and how to fix it!&quot; She was one of that day&#x27;s Lucky 10,000.
评论 #42413215 未加载
toomim5 months ago
The SCCS &quot;weave&quot; data structure is indeed poorly-understood; and what almost <i>nobody</i> knows is that it&#x27;s equivalent to a text CRDT!<p><a href="https:&#x2F;&#x2F;braid.org&#x2F;meeting-60&#x2F;sccs-is-a-time-collapse" rel="nofollow">https:&#x2F;&#x2F;braid.org&#x2F;meeting-60&#x2F;sccs-is-a-time-collapse</a>
throw0101c5 months ago
TUHS = The Unix Heritage Society<p>* <a href="https:&#x2F;&#x2F;www.tuhs.org" rel="nofollow">https:&#x2F;&#x2F;www.tuhs.org</a><p>* <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Ancient_UNIX#The_Unix_Heritage_Society" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Ancient_UNIX#The_Unix_Heritage...</a>
joshuaissac5 months ago
We still use SCCS at the investment firm I work at, to track configuration file change history.<p>The source code itself was moved to Subversion (via RCS and CVS) long ago, and later to Git, but the configuration files continue to be tracked using SCCS.<p>There is an open source implementation of SCCS called GNU CSSC: <a href="https:&#x2F;&#x2F;www.gnu.org&#x2F;software&#x2F;cssc&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.gnu.org&#x2F;software&#x2F;cssc&#x2F;</a>
评论 #42414892 未加载
e405 months ago
For those that don&#x27;t know, Larry was the author of BitKeeper and when he changed the license for it, it prompted Linus to write Git. Guessing if he had never done that, we&#x27;d all be using BitKeeper now and Git wouldn&#x27;t exist.
评论 #42413201 未加载
评论 #42413216 未加载
m4635 months ago
I remember moving some code stored in SCCS from unix to a (microsoft) xenix machine. But the compilation broke and I had to track down what was going wrong.<p>I finally found out the probelem, which was part sccs and part xenix.<p>xenix had shorter filenames, so while checking filename.c into SCCS gave s.filename.c, checking longfilename.c into sccs gave s.longfilename and checking it out lost the .c extension and make wouldn&#x27;t compile it.
maxbond5 months ago
Server is hanging up on me for some reason. Posting an archive link in case anyone else has this problem.<p><a href="https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20241213205017&#x2F;https:&#x2F;&#x2F;www.tuhs.org&#x2F;pipermail&#x2F;tuhs&#x2F;2024-December&#x2F;031188.html" rel="nofollow">https:&#x2F;&#x2F;web.archive.org&#x2F;web&#x2F;20241213205017&#x2F;https:&#x2F;&#x2F;www.tuhs....</a>
winocm5 months ago
I still want to set up a copy of TeamWare SCCS… it seems to have several SunOS specific expansion extensions that are prevalent in many Solaris source files (such as %Z).<p><a href="https:&#x2F;&#x2F;en.m.wikipedia.org&#x2F;wiki&#x2F;Sun_WorkShop_TeamWare" rel="nofollow">https:&#x2F;&#x2F;en.m.wikipedia.org&#x2F;wiki&#x2F;Sun_WorkShop_TeamWare</a>