> Martin, do you use any scripts to manage your patchset? The format of
> your mail looks similar to Andrew's, maybe you both use the same thing?
Yeah, I just make a bunch of hardlinked views, and some little wrapper
scripts. They're all here:
ftp://ftp.kernel.org/pub/linux/kernel/people/mbligh/tools/patch/
Basically, I have a directory strucuture that looks like this:
~/linux/patches/2.6.0
~/linux/patches/2.6.0-mjb1
~/linux/patches/2.6.0-mjb2
then
~/linux/views/2.6.0/virgin
~/linux/views/2.6.0-mjb2/000-virgin (just a clone of the above)
~/linux/views/2.6.0-mjb2/100-netdrvr_2.6.0_exp3
...
~/linux/views/2.6.0-mjb2/630-lockmeter_notsc
~/linux/views/2.6.0-mjb2/999-mjb
So 000-virgin is the virgin kernel, 100-foo has patch 100-foo in it,
101-bar has 100-foo & 101-bar, etc, etc.
When 2.6.1 comes out I do something like this:
cd ~/linux/views
mkdir 2.6.1
mkdir 2.6.1-mjb1
dupview 2.6.0/virgin 2.6.1/virgin
cd 2.6.1/virgin
bzcat ~mirror/kernel/v2.6/patch-2.6.1.bz2 | patch -p1
cd ../..
dupview 2.6.1/virgin 2.6.1-mjb1/000-virgin
cd 2.6.1-mjb1
applypatches ~/linux/patches/2.6.0-mjb1/[0-9]*
<wait for a patch to reject ... say it breaks on 240-foo, it'll stop>
cd 240-foo
<fix the rejects>
cd ..
applypatches ~/linux/patches/2.6.0-mjb1/2[5-9]*
applypatches ~/linux/patches/2.6.0-mjb1/[3-9]*
then if I run the releasemjb script, it generates all the new diffs,
and uploads them to kernel.org for me. Cloning views is pretty fast,
though it's slower on ext3. I like having the numbering system, rather
than Andrew's series file for ordering stuff, though having all the
views is probably less efficient than Andrew's. I guess the main benefit
is that it's simple, and I understand exactly what it's doing.
Oh, and I use the "dupvi" script to edit files - it just breaks the
link first. All linked files are auto-chmod'ed to read only so it's
harder to make a mistake, and edit both views at once. It could probably
do with some tweaking, ie instead of
applypatches ~/linux/patches/2.6.0-mjb1/2[5-9]*
applypatches ~/linux/patches/2.6.0-mjb1/[3-9]*
it should somehow do
applypatches from ~/linux/patches/2.6.0-mjb1/250
and know that means to apply the rest on upwards.