Formatting and sending patches

Elazar Leibovich edited this page Jan 25, 2015 · 5 revisions
Clone this wiki locally

You commit locally to your git tree and then prepare patches that you send to the mailing list.

First, make your name and email address are configured for git:

$ git config user.name "Your Name"
$ git config user.email "your@mail.com"

Also configure git to detect renames and copies to make git format-patch output easier to review:

git config --global diff.renames copies

Then, make your modifications in your own private branch:

$ git checkout -b features/foo # branches from master

To commit changes, do:

$ git commit -a -s # commit everything, signoff the patches

Please prepare a commit message for every commit:

http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html

The sign-off procedure is explained here:

http://ltsi.linuxfoundation.org/developers/signed-process

Once you have commits you want to send out, use git format-patch to generate them.

For multiple patches, use:

$ git format-patch -n --cover-letter master

for a single patch:

$ git format-patch -1

Verify the generated patch files and then use git send-email to send them out:

$ git send-email  --to osv-dev@googlegroups.com 00*.patch

If you need to send more than one revision of the patch, please remember to use patch versioning:

$ git format-patch --subject-prefix="PATCH v2"

You can find information on how to configure git to use gmail here:

http://morefedora.blogspot.se/2009/02/configuring-git-send-email-to-use-gmail.html