[TUHS] SCCS, TeamWare, BitKeeper, and Git
Larry McVoy
lm at mcvoy.com
Mon Dec 16 00:31:00 AEST 2024
On Sun, Dec 15, 2024 at 03:34:47AM -0600, G. Branden Robinson wrote:
> > > > 2. "TeamWare and BitKeeper took advantage of the interleaved
> > > > delta algorithm, also known as a weave, to implement an
> > > > efficient way to represent merged deltas by reference, instead
> > > > of reproducing code inside the repository. This is a lot more
> > > > complicated to do with reverse deltas, introduced by RCS.*"
> > > >
> > > > I'd a like a second footnote directing me to where I can
> > > > understand the mathematics supporting this claim. Just out of
> > > > nerd interest.
> > >
> > > See if this helps:
> > >
> > > https://www.tuhs.org/pipermail/tuhs/2024-December/031188.html
>
> I saw that, and it sheds some light, but it doesn't rise to the level of
> a theorem.
Try rereading it a few times. And work through the various versions of
the history file I wrote out. Everything you need to understand is right
there. I get that it isn't easy, but it isn't that hard either.
> If I were a mathematician, I might know what analytical discipline to
> bring to bear on my question to you, but the best I can do is to mumble
> about how it looks like you need both graph theory and set theory for
> this.
You need to be able to visualize a graph, yes. And Rick would agree you
need some education to _really_ understand everything. I'd argue you need
very little to get the basics.
Remember, the claim is that an automerge is a set thing only, no changes
to the weave. I demonstrated that.
> A good mathematical expositor could, I add, employ these tools without
> leaning too hard on the formalisms, and produce a writeup that is
> broadly accessible.
>
> We used to have USENIX for this sort of thing...
Indeed. And if USENIX were still a thing, I might write that paper. I'm
not particularly motivated. I participated in a 3 day SCM something a
while back, put on by google and facebook. I spent 3 days listening to
their problems, and on most of them, I said "yeah, we solved that, here
is what we did". And then watched while they ignored everything.
So I'm not hopeful that people will get it. If I were younger, I might
write the paper anyway but I'm not. I tried, BK is open source, you can
go read the code (I know of one guy who did and came back claiming it was
the most pleasant C source base he had ever seen, but that's it. Noone
else has said boo).
> I've noted your enthusiasm for the weave and BK's amplification of the
> concept. What I think you need is, as noted, a mathematical expositor
> who can express the novelty of Rochkind's and your contributions in
> terms that professionals who have little contact with the problems of
> "source code configuration management" (an alternative nomenclature for
> "version control" I've encountered) can comprehend. You've tried
> popularizing to the masses. My conclusion is that, at best, they stare
> slackly at you and say, "Git does that. I use Git.". To get your
> innovation more broadly recognized, you may therefore have to take your
> case to the ivory tower.
You're almost there. What they say is "I use Github". Github has
dumbed down DVCS to the point they aren't much different than CVS.
When I realized that years ago, I retired. My belief is BK is sort of
like betamax, it's better but VHS won. It is what it is.
More information about the TUHS
mailing list