<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p>"Is there a DVCS out there that's an alternative to Git?"</p>
<p>I'm sure the list will offer many options, but I think you might
want to look into mentioning either Fossil or Mercurial as
alternatives to Git. I have used Mercurial a tiny bit, and I have
used Fossil regularly over the last several years. Considering
commercial (not open source) software, I think Perforce is another
candidate, I have used it before, not lately, but at the time I
used it, I think it had a reasonably large customer base.</p>
<div class="moz-cite-prefix">On 12/14/2024 12:13 PM, Marc Rochkind
wrote:<br>
</div>
<blockquote
cite="mid:CAOkr1zWG2Afg6-rbGQGBG7SvciHzbR+Wrt_dHHFkVX6k_7Mkpw@mail.gmail.com"
type="cite">
<div dir="ltr">Thanks, Larry and Branden. I'll try to work what
you're saying into my paper.
<div><br>
</div>
<div>Larry, I found your post of a few days ago (<a
moz-do-not-send="true"
href="https://www.tuhs.org/pipermail/tuhs/2024-December/031188.html">https://www.tuhs.org/pipermail/tuhs/2024-December/031188.html</a>)
very illuminating, and I'd like to reference it, which I could
do with that post. But, is there some other, more
referenceable article saying the same thing that I can
reference instead?</div>
<div><br>
</div>
<div>Regarding BK vs. Git. Even if BK is superior, can today's
developers use BK? My understanding is that it is no longer
supported.</div>
<div><br>
</div>
<div>Is there a DVCS out there that's an alternative to Git?</div>
<div><br>
</div>
<div>The reason why this part of my paper has to be short is
that I'm discussing the influence of SCCS on software
engineering, and its influence on DVCSs is very indirect. My
paper isn't a history of VCSs.</div>
<div><br>
</div>
<div>Marc</div>
</div>
<br>
<div class="gmail_quote gmail_quote_container">
<div dir="ltr" class="gmail_attr">On Sat, Dec 14, 2024 at
11:53 AM Larry McVoy <<a moz-do-not-send="true"
href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On
Sat, Dec 14, 2024 at 12:25:56PM -0600, G. Branden Robinson
wrote:<br>
> At 2024-12-14T10:43:47-0700, Marc Rochkind wrote:<br>
> > As I mentioned in another post, I'm writing an
invited paper for an<br>
> > upcoming issue of IEEE Transactions on Software
Engineering that will<br>
> > be a 50-year retrospective of my original 1975 SCCS
paper (<br>
> > <a moz-do-not-send="true"
href="http://mrochkind.com/aup/talks/SCCS-Slideshow.pdf"
rel="noreferrer" target="_blank">mrochkind.com/aup/talks/SCCS-Slideshow.pdf</a>).
Can some people here<br>
> > review a couple of paragraphs for accuracy?<br>
> <br>
> I apologize for this not being quite responsive to your
query, then.<br>
> <br>
> 1. Tom Lord's Arch (ca. 2001) was at one timely
recognized for<br>
> popularizing, or perhaps _introducing_, the notion of
decentralized<br>
> version control to the dot-com era of hard-scrabble
FLOSS developers<br>
> who were building "Web 2.0" and whose startup
employers, be they<br>
> flush with cash or not, generally would not spring
for a commercial<br>
> VCS (which might not have been decentralized anyway).<br>
<br>
BitKeeper was 3 years into development by then. Here is the
first BK<br>
changeset:<br>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:ChangeSet@1.1">ChangeSet@1.1</a>, 1999-03-19 16:11:26-08:00, <a
moz-do-not-send="true" href="mailto:lm@lm.bitmover.com"
target="_blank">lm@lm.bitmover.com</a><br>
BitKeeper gets stored in BitKeeper.<br>
<br>
> The most salient point here is that Linus Torvalds
was not prescient<br>
> or uniquely perceptive in recognizing the value of a
DVCS. <br>
<br>
Couldn't agree more. He, Dave Miller, and Richard Henderson
came to my<br>
house in SF because Dave was threatening to fork Linux because
Linus<br>
used no SCM at all. That pushed all the merges to the next
level, to<br>
people like Dave. It took me 4-5 hours of explaining how
distributed<br>
SCM would work for Linus to get it. My wife was unimpressed
with him.<br>
Whatever, at the end of that day, he said "build that and I'll
use it".<br>
And we did, he did, and rate of development doubled (according
to the<br>
people who hated me) and was actually about 10x faster
(according to the<br>
people who could do math).<br>
<br>
> 2. "TeamWare and BitKeeper took advantage of the
interleaved delta<br>
> algorithm, also known as a weave, to implement an
efficient way to<br>
> represent merged deltas by reference, instead of
reproducing code<br>
> inside the repository. This is a lot more complicated
to do with<br>
> reverse deltas, introduced by RCS.*"<br>
> <br>
> I'd a like a second footnote directing me to where I
can understand<br>
> the mathematics supporting this claim. Just out of
nerd interest.<br>
<br>
See if this helps:<br>
<br>
<a moz-do-not-send="true"
href="https://www.tuhs.org/pipermail/tuhs/2024-December/031188.html"
rel="noreferrer" target="_blank">https://www.tuhs.org/pipermail/tuhs/2024-December/031188.html</a><br>
<br>
You can work out that SCCS/BK are doing what they claim by
running <br>
bk annotate on a file that was authored by X but automerged by
Y.<br>
The authorship stays the same across the merge, that's not
true in<br>
most SCM systems that copy the data from the branch to the
trunk.<br>
<br>
Happy to answer any questions. And, yes, git is a ginormous
step<br>
backwards. Only one graph, BK had a graph per file so the GCA
is<br>
always the correct one, none of this try different ones until
you<br>
get one that automerges; since there is only one graph, all
you <br>
get are commit comments, you lose the
oh-so-valuable-file-comments<br>
that you need when the crap hits the fan; you lose a boat load
of<br>
performance, especially in areas like annotate/blame when the
repo<br>
gets big, etc. Git sucks, it really does. Linus claims he
wrote<br>
it in a week and it shows.<br>
-- <br>
---<br>
Larry McVoy Retired to fishing <a
moz-do-not-send="true" href="http://www.mcvoy.com/lm/boat"
rel="noreferrer" target="_blank">http://www.mcvoy.com/lm/boat</a><br>
</blockquote>
</div>
<div><br clear="all">
</div>
<div><br>
</div>
<span class="gmail_signature_prefix">-- </span><br>
<div dir="ltr" class="gmail_signature">
<div dir="ltr">
<div><i>My new email address is <a moz-do-not-send="true"
href="mailto:mrochkind@gmail.com" target="_blank">mrochkind@gmail.com</a></i></div>
</div>
</div>
</blockquote>
<br>
</body>
</html>