Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux checkpatch.pl是如何工作的,在补丁上运行它可以得到什么?_Linux_Git - Fatal编程技术网

Linux checkpatch.pl是如何工作的,在补丁上运行它可以得到什么?

Linux checkpatch.pl是如何工作的,在补丁上运行它可以得到什么?,linux,git,Linux,Git,我对Linux和Git非常陌生。我想知道checkpatch.pl脚本到底做了什么。我知道互联网上有一个源代码,但它是一个Perl脚本,我不知道Perl 那么,这里有人能解释一下它到底做了什么吗?是内核树中的一个脚本,它有助于更好地编写内核代码,并可用于检查许多编码样式规则。默认情况下,此脚本应用于修补程序文件,但也可以使用-f或--file选项处理完整的源文件 见: 或 它是一个检查您的编码风格是否与Linux编码风格匹配的工具。您可以使用-help查看您可以使用哪些选项。检查文件后,该工具将

我对Linux和Git非常陌生。我想知道
checkpatch.pl
脚本到底做了什么。我知道互联网上有一个源代码,但它是一个Perl脚本,我不知道Perl

那么,这里有人能解释一下它到底做了什么吗?

是内核树中的一个脚本,它有助于更好地编写内核代码,并可用于检查许多编码样式规则。默认情况下,此脚本应用于修补程序文件,但也可以使用
-f
--file
选项处理完整的源文件

见:


它是一个检查您的编码风格是否与Linux编码风格匹配的工具。您可以使用-help查看您可以使用哪些选项。检查文件后,该工具将打印一个结果,如编译结果。结果显示哪一行有编码样式错误和警告,并提醒您如何修改代码。您还可以修改脚本工具以匹配自己的编码风格。

checkpatch.pl主要用于验证风格编码约定,以便任何试图向Linux内核上游提交代码的人都可以通过首先运行此脚本来确保满足基本的编码风格要求(并且,如果可能的话,不会产生错误或警告)。它还内置了一些基本的编程保护措施,可以在代码中标记潜在的危险/错误行,以防止您尝试上游编译但不会被上游接受的代码(在大多数情况下)

您可以在下面的链接中找到checkpatch.pl以及其他一些对Linux内核开发人员有用的脚本:

获取脚本后,在尝试运行之前,请确保对其运行“chmod 777 checkpatch.pl”

如前所述,您可以在修补程序或源文件上使用它。只需确保在运行脚本时使用正确的标志,您可以通过运行“checkpatch.pl-h”查看脚本选项列表,它将显示脚本的帮助手册。

此链接可能会有所帮助
scripts/checkpatch.pl -h # running from kernel source root
checkpatch.pl -h --no-tree # when pwd ≠ root of the kernel source