怎么样通过使用git来创建并提交你的第一个linux内核patch

时间:2022-09-22 23:34:44

原文地址:http://linux.koolsolutions.com/2011/02/26/howto-create-and-submit-your-first-linux-kernel-patch/

step 1:install git tools

apt-get update

apt-get install git git-email gitk

完成上面的安装后,就可以进行一些简单的配置:

git config --add user.name "jackyard"

git config --add user.email "jackyard88@gmail.com"

step 2:clone linus' git tree

这一步,就是通过git来下载linux内核,前提是必须保证你至少有2GB的空间。

git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 mylinux-2.6

根据你的网速,下载时间可能要10几分钟。

Step 3: Now create a local branch to make your changes

git branch myfixdir git checkout myfixdir

Step 4: Make your changes

在这里你可以在当前目录下修改你的代码,在完成修改后,可以用下面的命令来保存:
git commit -a
这时会找开一个文本编辑窗口,要求你输入log信息,这些log信息会成为你patch的一部分,会和patch一起发给linux内核的维护者们。如下:

x86: Fix reboot problem on VersaLogic Menlow boards

VersaLogic Menlow based boards hang on reboot unless reboot=bios is used. Add quirk to reboot through the BIOS.

Tested on at least four boards.
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch Test1
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       modified:   arch/x86/kernel/reboot.c
#

像上面蓝色的信息会成为主要的主题信息,通过它来区分不同的patch.在这一行后面,一定要留一个空行,如果没有一个空行,它会和后面的description信息一起成为你的subject line,这样会显的很乱。之后就是要输入你的description信息,如上面桔黄色的部分。

以#号开问的log在提交时会忽略掉。

Step 5:generate your patch


 

Go on.............................

















引用:http://blog.csdn.net/paul_liao/article/details/7173772