Thread (3 messages) flat view 3 messages, 3 authors, 2016-06-15
  • (off-list ancestor, not in this archive)
  • Re: Darcs · Linus Torvalds <torvalds@linux-foundation.org> · 2016-06-15
  • Re: Darcs · Dan Chokola <hidden> · 2016-06-15
  • Re: Darcs · Martin Langhoff <hidden> · 2016-06-15

Re: Darcs

From: Dan Chokola <hidden>
Date: 2016-06-15 22:43:18

On 6/24/07, Linus Torvalds [off-list ref] wrote:
On Sun, 24 Jun 2007, Dan Chokola wrote:
quoted
What I have noticed is a lot of nitpicking, of which I'm guilty, too. The
issue Linus brought up about Darcs and versioning is not one I typically see
surface in real life. Users usually complain about some _release_ version
or, "I updated last week."
Actually, in the kernel, we are getting quite a lot out of "git bisect",
and people throw git SHA1's around to describe where they are, or a
particular commit.

Which never happened with BK.

So I think that the _ability_ to name revisions easily across different
uses is quite important, because it then drives behaviour.
I wholeheartedly agree it's important as far as the big picture of SCM
is concerned. Though I will say that the kernel development is an
extreme case, where there's a huge number of developers and incredibly
fast development where matching features are needed from the SCM. And
I love how Git is born out of this extreme case, as it leads to a lot
of great features that often scale down, too. But some of them matter
less to, say, a small, well-integrated team of 5 or 10 people. And an
idealistic model like the one offered by Darcs might even work better
there since corner cases don't show up often.

I'm spoiled by Git and the fact that it has these great abilities and
features that set it apart, and I'd love everyone to use it. But I'd
like people to know that many attributes of Git and other DSCMs don't
differ all that much. (Please don't call me ugly and stupid. ;) And
actually, this is something of a selling point, because it makes it
Git seem cozy and familiar.

So, relating back to the original post, and extending on Linus'
'academic' analogy, Darcs is like a thesis project from university
that proves how DSCM can be done scientifically. Git is grown-up Darcs
that proves how DSCM can be done practically. The bottom line is the
foundations of DSCM, cheap branching, easy merging, and the like, can
be done very similarly in either Darcs or Git, so moving from one to
the other leaves you with a largely familiar set of commands.
Without it, you'll never notice you need it. With it, you start wondering
how others handle it.
Git really does have a way of spoiling its users (I don't know how
CVS/SVN users live), no argument here.

-Daniel "Puzzles" Chokola
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help