All of lore.kernel.org
 help / color / mirror / Atom feed
From: Al Viro <viro@ftp.linux.org.uk>
To: Andrew Morton <akpm@osdl.org>
Cc: reuben-lkml@reub.net, linux-kernel@vger.kernel.org
Subject: Re: 2.6.16-rc4-mm1
Date: Tue, 21 Feb 2006 04:40:04 +0000	[thread overview]
Message-ID: <20060221044004.GV27946@ftp.linux.org.uk> (raw)
In-Reply-To: <20060220165327.64f15bba.akpm@osdl.org>

On Mon, Feb 20, 2006 at 04:53:27PM -0800, Andrew Morton wrote:
> Al Viro <viro@ftp.linux.org.uk> wrote:
> >
> > It really would be more useful to pick individual branches
> >  	fixes.b8
> >  	m32r.b0
> >  	m68k.b8
> >  	xfs.b8
> >  	uml.b1
> >  	net.b6
> >  	frv.b8
> >  	misc.b8
> >  	upf.b5
> >  	volatile.b0
> >  	endian.b8
> >  	net-endian.b3
> 
> OK...  But it looks like these are liable to be removed, renamed or added
> to at the drop of a hat.  I don't know how to keep up with that.

No renaming...  FWIW, the workflow looks that way:

* origin follows mainline; no merges, no commits, only fetching from Linus
* everything else is branched off origin; branches starting at Nth branch
point have .b<N> as suffix.
* all topic branches (everything except bird) _never_ get merges; only
commits, 100% linear history.
* composite branch (bird), OTOH, gets only merges - from origin and from
topic branches.
* whenever a conflict would happen:
	* new bird.b<N> is spawned;
	* all affected branches are respawned (off the same point on mainline)
and cherry-picked from their previous versions.
	* the latest versions of all topic branches are merged into composite
one.

That's it for master repository.  Work repositories are cloned from it;
there I have a transient branch (work) starting at the tip of bird.b<latest>.
All changes go there; to get them back into master I cherry-pick from work
to appropriate topic branches and fetch them into master.  Then (in master)
I merge them into composite branch and push the result to work repos.
At that point I again have all of them in sync and just reset work branch
to tip of composite one.

It works surprisingly well; nice properties:
	* latest versions of all topic branches merge clean and have linear
history.  IOW, git-format-patch on any of them gives a set of patches that
will apply to the tip of mainline and won't conflict each other.
	* at all times composite branch is equal to merge of topic ones and
latest mainline.
	* all build boxen are kept in sync easily
	* I never have to trust build boxen with anything about master or each
other.
	* Adding new build boxen is trivial; so's redistributing work between
those.
	* Branches in master are never renamed, removed or reset.

The last one is a big win compared to davem's "rebase everything all the
time" and this setup does, AFAICS, behave no worse wrt giving clean
patchset.

As for the "what to pick" - I've just put that into
ftp.kernel.org/pub/linux/kernel/people/viro/bird-branches (and will put
composite patch there) and I can send mail whenever that changes...

  reply	other threads:[~2006-02-21  4:40 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-20 12:26 2.6.16-rc4-mm1 Andrew Morton
2006-02-20 12:38 ` 2.6.16-rc4-mm1 Al Viro
2006-02-20 12:54   ` 2.6.16-rc4-mm1 Francesco Biscani
2006-02-20 12:40 ` 2.6.16-rc4-mm1 Reuben Farrelly
2006-02-20 19:36   ` [PATCH] remove ccache from top level Makefile and make configurable Andy Whitcroft
2006-02-20 21:39     ` Christopher Friesen
2006-02-21 18:39       ` Andy Whitcroft
2006-02-20 20:15   ` 2.6.16-rc4-mm1 Al Viro
2006-02-21  0:53     ` 2.6.16-rc4-mm1 Andrew Morton
2006-02-21  4:40       ` Al Viro [this message]
2006-02-21  7:59       ` 2.6.16-rc4-mm1 Arjan van de Ven
2006-02-20 13:02 ` 2.6.16-rc4-mm1 Reuben Farrelly
2006-02-20 14:11   ` 2.6.16-rc4-mm1 Patrick McHardy
2006-02-20 14:11     ` 2.6.16-rc4-mm1 Patrick McHardy
2006-02-20 14:20     ` 2.6.16-rc4-mm1 Arnaldo Carvalho de Melo
2006-02-20 14:20       ` 2.6.16-rc4-mm1 Arnaldo Carvalho de Melo
2006-02-20 20:04     ` 2.6.16-rc4-mm1 Carl-Daniel Hailfinger
2006-02-20 20:04       ` 2.6.16-rc4-mm1 Carl-Daniel Hailfinger
2006-02-20 20:44     ` 2.6.16-rc4-mm1 Adrian Bunk
2006-02-20 20:44       ` 2.6.16-rc4-mm1 Adrian Bunk
2006-02-21  1:17       ` 2.6.16-rc4-mm1 Patrick McHardy
2006-02-21  1:17         ` 2.6.16-rc4-mm1 Patrick McHardy
2006-02-21  2:00         ` 2.6.16-rc4-mm1 Adrian Bunk
2006-02-21  2:00           ` 2.6.16-rc4-mm1 Adrian Bunk
2006-02-20 20:56     ` 2.6.16-rc4-mm1 Arnaldo Carvalho de Melo
2006-02-20 20:56       ` 2.6.16-rc4-mm1 Arnaldo Carvalho de Melo
2006-02-20 21:09     ` 2.6.16-rc4-mm1 Adrian Bunk
2006-02-20 21:09       ` 2.6.16-rc4-mm1 Adrian Bunk
2006-02-20 21:09       ` 2.6.16-rc4-mm1 Adrian Bunk
2006-02-20 14:37 ` 2.6.16-rc4-mm1: usbfs2 multiply defined symbols Adrian Bunk
2006-02-20 17:33   ` [linux-usb-devel] " Greg KH
2006-02-20 15:07 ` 2.6.16-rc4-mm1 kernel crash at bootup. parport trouble? Helge Hafting
2006-02-20 15:25   ` MIke Galbraith
2006-02-20 20:41     ` Andrew Morton
2006-02-20 23:36       ` Rafael J. Wysocki
2006-02-20 23:40         ` Andrew Morton
2006-02-21  0:02           ` Rafael J. Wysocki
2006-02-21  0:09             ` Andrew Morton
2006-02-21  0:20               ` Rafael J. Wysocki
2006-02-22 11:44             ` Rafael J. Wysocki
2006-02-22 11:56               ` Andrew Morton
2006-02-22 18:19                 ` Rafael J. Wysocki
2006-02-20 22:58     ` Rafael J. Wysocki
     [not found] ` <6bffcb0e0602200533p1a3da98ew@mail.gmail.com>
2006-02-20 16:33   ` 2.6.16-rc4-mm1 Greg KH
2006-02-20 17:54 ` 2.6.16-rc4-mm1 Bernhard Rosenkraenzer
2006-02-20 19:25 ` [PATCH -mm HOT-FIX] fix build on ia64 (modpost.c) Sam Ravnborg
2006-02-20 19:25   ` Sam Ravnborg
2006-02-20 21:37   ` Andrew Morton
2006-02-20 21:37     ` Andrew Morton
2006-02-21  8:14 ` 2.6.16-rc4-mm1 Laurent Riffard
2006-02-21  8:16   ` 2.6.16-rc4-mm1 Andrew Morton
2006-02-21 19:00 ` 2.6.16-rc4-mm1 console (radeonfb) not resumed after s2ram Mattia Dongili
2006-02-21 21:43   ` Andrew Morton
2006-02-22 14:24     ` Mattia Dongili
2006-02-22 19:39       ` Mattia Dongili
2006-02-22 20:40         ` Andrew Morton
2006-02-22 13:47 ` 2.6.16-rc4-mm1 Alexander E. Patrakov
2006-02-22 15:26   ` 2.6.16-rc4-mm1 Alexander E. Patrakov
2006-02-23 12:10     ` 2.6.16-rc4-mm1 Alan Cox
2006-02-23 13:02       ` 2.6.16-rc4-mm1 Thierry Vignaud
2006-02-23 15:19         ` 2.6.16-rc4-mm1 Alan Cox
2006-02-22 15:36   ` 2.6.16-rc4-mm1 Randy.Dunlap
2006-02-23  6:53   ` 2.6.16-rc4-mm1 Randy.Dunlap
2006-02-23  9:11     ` 2.6.16-rc4-mm1 Alexander E. Patrakov
2006-02-23 15:27       ` 2.6.16-rc4-mm1 Randy.Dunlap
2006-02-23 18:21     ` zcat: stdin: decompression OK (was: Re: 2.6.16-rc4-mm1) Alexey Dobriyan
2006-02-24  4:18       ` Randy.Dunlap
2006-02-24  4:51       ` zcat: stdin: decompression OK Alexander E. Patrakov
2006-02-27  1:59         ` Randy.Dunlap
  -- strict thread matches above, loose matches on Subject: below --
2006-02-21 23:19 2.6.16-rc4-mm1 Chuck Ebbert
2006-02-21 18:14 2.6.16-rc4-mm1 Chuck Ebbert
2006-02-21 21:41 ` 2.6.16-rc4-mm1 Andrew Morton
2006-02-21 22:17 ` 2.6.16-rc4-mm1 Sam Ravnborg
2006-02-20 12:26 2.6.16-rc4-mm1 Andrew Morton

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=20060221044004.GV27946@ftp.linux.org.uk \
    --to=viro@ftp.linux.org.uk \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=reuben-lkml@reub.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.