How to submit multiple related patches

Javier Martinez Canillas martinez.javier at gmail.com
Thu Jul 21 20:33:33 EDT 2011


On Fri, Jul 22, 2011 at 1:11 AM, Zac Storer <zac.3.14159 at gmail.com> wrote:
> What is the best way to send multiple related patches?
>
> for example:
>
> A series of patches that fix indentation issues within a single
> src file.
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
>

Well the best way to send related patches is using git IMHO. For each
change that you do, you can commit to a branch in your git tree. Then
you can let git generate the patches for you and finally use
git-send-email to send the patch series.

For example:

Create a local branch for a tree:

$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/sfr/linux-next.git
$ cd linux-next
$ git checkout -b devel origin/master

Do some change and commit:

$ emacs drivers/staging/pohmelfs/dir.c
$ git add drivers/staging/pohmelfs/dir.c
$ git commit -m "Staging: pohmelfs/dir.c: Fix something"

Do another change and commit:

$ emacs drivers/staging/pohmelfs/dir.c
$ git commit -m "Staging: pohmelfs/dir.c: Fix another thing"

Generate your patchset with your last two commits

$ git format-patch -s -2

This will create one file for each patch generated.

So to send your patchset you can use the command:

$ git send-email --compose --to='Zac Storer <zac.3.14159 at gmail.com>'
--cc='kernelnewbies at kernelnewbies.org' *.patch

The command will extract the commit message and use it as the mail
subject, with the --compose flag you can create a prelude mail
explaining your patchset.

So this command will create 3 mails with these subjects

[PATCH 0/2]  Staging: pohmelfs/dir.c: Fixes
[PATCH 1/2]  Staging: pohmelfs/dir.c: Fix something
[PATCH 2/2]  Staging: pohmelfs/dir.c: Fix another thing

Also you can be sure that your email client didn't wrap lines and the
message era encoded in ASCII.

Remember always to use scripts/checkpatch.pl to check your patches and
scripts/get_maintainer.pl to check who are the developers that have to
be cc'ed.

Hope it helps,

-- 
Javier Martínez Canillas
(+34) 682 39 81 69
PhD Student in High Performance Computing
Computer Architecture and Operating System Department (CAOS)
Universitat Autònoma de Barcelona
Barcelona, Spain



More information about the Kernelnewbies mailing list