public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Zack Weinberg <zack@codesourcery.com>
To: Tom Lord <lord@emf.net>
Cc: gcc@gcc.gnu.org,  torvalds@transmeta.com
Subject: Re: source mgt....[_HAS_ gcc relevance]
Date: Sun, 15 Dec 2002 03:04:00 -0000	[thread overview]
Message-ID: <87lm2rkb6w.fsf@egil.codesourcery.com> (raw)
In-Reply-To: <200212150448.UAA01297@emf.net> (Tom Lord's message of "Sat, 14 Dec 2002 20:48:28 -0800 (PST)")

Tom Lord <lord@emf.net> writes:

> In relation to these features, it's interesting to read the recent
> narrowly-on-topic traffic on the gcc list (Mark and Zack's
> coordination with everyone else, comments about forming intermediate
> merges, and calls for help with testing branches).  I think that some
> of the issues around synchronizing work would be somewhat relaxed by
> applying these features; intermediate merges would be well
> facilitated and _partially_ automated (regardless of access writes of the
> authors); testing branches could be made more effectively
> automated (again, orthogonally to access rights).

Oh, no kidding.  I totally agree that a distributed repository system
is the way to go long term, and you'll notice that easy branches was
close to the top of my requirements list.

My comment about the Linux kernel development process was intended as
a comment about the way that project operates, which I happen to have
concerns about, but I'm pretty sure that's the way it has always
operated, independent of version-control system in use.

Linus Torvalds <torvalds@transmeta.com> writes:
> Many people want to check stuff into the CVS tree _not_ because they
> really want everybody to see the thing, but because they use the CVS tree
> as a way to communicate with a few other people working on the same thing.
> That's where the "single main repository" _really_ falls down.

And this is the assumption underlying the part of the kernel process
that I have concerns about.  It's true that mostly only a small number
of people work on any given chunk of a large piece of software, but I
strongly disagree that they should go off by themselves and merge into
the main tree only when they're done, as the default mode of
development.  The effect from everyone else's point of view is that
they pop up and inflict a huge indigestible glob of code on everyone,
which invariably has not been tested thoroughly enough and breaks
stuff.  Just watching linux-kernel suggests that this happens all the
time.  The USAGI patches, for instance, or Rusty's module rewrite.
We've had our share of this in GCC, too; the 'subreg_byte' changes
were maintained at enormous effort separate from the main tree for
_years_ before they accumulated enough evidence that it wouldn't break
anything.

Contrariwise, forcing people to do their work in the main tree means
that they have to do it incrementally, more eyes at least skim the
code, and it naturally gets adequate testing as other people try to do
their own work.  Also, I know that every time I've had to stop and
think how to do a transition incrementally, the end result has been
better off for it.  Al Viro's rewrite of the VFS layer is the obvious
example of this, or Jan Hubicka's jump optimizer overhaul.

As a user of the kernel, I am also concerned about the apparent trend
toward having many variant trees not for development, but to present
divergent sets of features and bugfixes.  It strikes me as a recipe
for user confusion and vendor malfeasance.

zw

  parent reply	other threads:[~2002-12-15  7:12 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-14 20:16 source mgt. requirements solicitation Nathanael Nerode
2002-12-14 21:34 ` Linus Torvalds
2002-12-14 23:12   ` source mgt....[_HAS_ gcc relevance] Tom Lord
2002-12-14 22:12     ` Linus Torvalds
2002-12-15  3:04     ` Zack Weinberg [this message]
2002-12-15  3:23       ` Tom Lord
2002-12-16  3:05 Robert Dewar
2002-12-16  4:15 ` Tom Lord
2002-12-16  4:40   ` Tom Lord
2002-12-16 16:36   ` Florian Weimer
2002-12-17  0:38     ` Momchil Velikov
2002-12-17 11:41       ` Daniel Egger
2002-12-17 13:17       ` Tom Lord
2002-12-16  4:56 Richard Kenner
2002-12-16  5:33 ` Tom Lord
2002-12-18 11:03 Robert Dewar

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=87lm2rkb6w.fsf@egil.codesourcery.com \
    --to=zack@codesourcery.com \
    --cc=gcc@gcc.gnu.org \
    --cc=lord@emf.net \
    --cc=torvalds@transmeta.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 read-only IMAP folder(s) and NNTP newsgroup(s).