From: Theodore Tso <tytso@mit.edu>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: Jakub Narebski <jnareb@gmail.com>, git@vger.kernel.org
Subject: Re: "Producting Open Source Software" book and distributed SCMs
Date: Tue, 1 May 2007 11:23:42 -0400 [thread overview]
Message-ID: <20070501152342.GB26093@thunk.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0705011057130.29859@racer.site>
On Tue, May 01, 2007 at 11:35:54AM +0200, Johannes Schindelin wrote:
> > [...]
> >
> > Because a fork is bad for everyone (for reasons examined in detail in
> > the section called "Forks" in Chapter 8, Managing Volunteers,
> > http://producingoss.com/producingoss.html#forks), the more serious the
> > threat of a fork becomes, the more willing people are to compromise to
> > avoid it.
>
> This is a lousy argument, IMHO.
>
> Why are forks bad? They are not. But if you "learnt" that merges are hard,
> they are.
>
> It is a pity that so many people were trained in CVS, and keep thinking
> some of the lectures were true, when they are no longer.
>
> Forks are good. In fact, we all "forked" with CVS as soon as we began
> hacking. Everybody who claims to never have started over from a fresh
> checkout, or from an "update -C"ed state, is probably lying, or a bad
> developer. Thinking about it, I believe that the difference between
> forking and branching is philosophical, not technical. You can always
> merge a fork.
There's a confusion going on here between a "fork" meaning a branch in
the SCM sense of the word, and a "Project Fork" where there are two
camps competing for developers and users. So for example, having
kerenl developers develop using branches which are then merged into
the -mm tree and then into Linus tree --- Good. In the
suspend-to-disk world, where we have *three* separate implementations,
with two in the mainline tree, and one very popular one, suspend2,
with features that niether of the in-mainline implementations have,
and with Pavel constantly casting aspersions at Nigel because he's
splitting the development effort --- Not So Good.
I prefer to use the term "branch" to talk about a SCM and development
series, and to use the term "fork" to talk about the political/project
issues. So for example, even though Ingo Molnar's CONFIG_PREEMPT_RT
patchset has been a very long-running thing, it is constantly getting
rebased against the kernel, and there is no expectation that this
would replace the mainline kernel. That makes a code branch, and not
a fork.
So my suggestion is to let branches be branches, and to reserve fork
for when there is an attempt to compete for developer and user
attention. That is more or less the general understanding of the two
terms, and trying to confuse the two only leads to confusion and a
general muddying of the waters.
Regards,
- Ted
next prev parent reply other threads:[~2007-05-01 15:24 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-29 23:20 "Producting Open Source Software" book and distributed SCMs Jakub Narebski
2007-05-01 9:35 ` Johannes Schindelin
2007-05-01 15:23 ` Theodore Tso [this message]
2007-05-01 15:45 ` Johannes Schindelin
2007-05-01 18:30 ` Jakub Narebski
2007-05-01 23:13 ` Linus Torvalds
2007-05-01 16:15 ` Linus Torvalds
2007-05-01 22:27 ` Jakub Narebski
2007-05-01 22:45 ` Linus Torvalds
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070501152342.GB26093@thunk.org \
--to=tytso@mit.edu \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=jnareb@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).