[TUHS] SCCS roach motel
Larry McVoy
lm at mcvoy.com
Sat Dec 14 10:53:05 AEST 2024
On Fri, Dec 13, 2024 at 04:38:49PM -0700, Warner Losh wrote:
> On Fri, Dec 13, 2024, 4:19???PM Larry McVoy <lm at mcvoy.com> wrote:
>
> > On Fri, Dec 13, 2024 at 05:57:55PM -0500, Norman Wilson wrote:
> > > This is verging on COFF material, and I won't mind if someone
> > > moves the discussion thither:
> > >
> > > Clem Cole:
> > >
> > > As a satisfied user of SCCS (and later Bitkeeper), it's still my
> > preferred
> > > choice.
> > >
> > > ====
> > >
> > > I have to admit SCCS is one of the many pieces of software
> > > I tried for a week or two > 40 years ago and abandoned because
> > > I couldn't stand it. I don't think I ever tried RCS, because
> > > I could see it didn't what I saw as the underlying problems.
> > > CVS likewise. Subversion was the earliest version-control
> > > system that felt usable to me.
> > >
> > > What bugged me so much? The earlier systems were focussed
> > > entirely (or for CVS, almost entirely) on individual files.
> > > There was no way to link changes that affected more than one
> > > file:
> >
> > That was the problem that BitKeeper solved. There was an extra step,
> > bk commit, that glued all the files together in an atomic commit.
> > That and each commit was like a CVS tag, you can roll the history back
> > to any commit, no tags are needed. That's because while you think of a
> > revision as 1.5 or whatever, and BitKeeper had that interface, the real
> > name is a a provably unique key made up of
> >
> > user at host|path/to/file.c|time_t|sccs_cksum
> >
> > We called those "keys" and you could use a key any place you could use
> > a revision.
> >
>
> That's a nice feature... Too bad we don't have it for the historic SCCS
> trees.
SCCS doesn't version pathnames so you have to fake it. You could look at
BitKeeper's import -tSCCS to see what we did, I would think we would have
done something sensible.
> Also, the historical SCCS trees lack metatdata about file renames (which
> were done by moving the ,s files)...
See above. BitKeeper versioned not only path names (they are an attribute
of each delta) but also file types: symlink, regular, not sure if we ever
did hard links.
--
---
Larry McVoy Retired to fishing http://www.mcvoy.com/lm/boat
More information about the TUHS
mailing list