devtools: select patches to check with git range

Rather than default to origin/master.., it can be handy to choose the
range you want to check.

Example on a branch rebased on next-net:

Before:
$ ./devtools/checkpatches.sh
...
...
67/69 valid patches

After:
$ ./devtools/checkpatches.sh -r next-net/master..

3/3 valid patches

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Thomas Monjalon <thomas@monjalon.net>
This commit is contained in:
David Marchand 2019-05-10 09:49:36 +02:00 committed by Thomas Monjalon
parent 93fa422f74
commit ee2b25c85a

View File

@ -44,13 +44,14 @@ trap "clean_tmp_files" INT
print_usage () {
cat <<- END_OF_HELP
usage: $(basename $0) [-q] [-v] [-nX|patch1 [patch2] ...]]
usage: $(basename $0) [-q] [-v] [-nX|-r range|patch1 [patch2] ...]]
Run Linux kernel checkpatch.pl with DPDK options.
The environment variable DPDK_CHECKPATCH_PATH must be set.
The patches to check can be from stdin, files specified on the command line,
or latest git commits limited with -n option (default limit: origin/master).
latest git commits limited with -n option, or commits in the git range
specified with -r option (default: "origin/master..").
END_OF_HELP
}
@ -79,12 +80,14 @@ check_forbidden_additions() { # <patch>
}
number=0
range='origin/master..'
quiet=false
verbose=false
while getopts hn:qv ARG ; do
while getopts hn:qr:v ARG ; do
case $ARG in
n ) number=$OPTARG ;;
q ) quiet=true ;;
r ) range=$OPTARG ;;
v ) verbose=true ;;
h ) print_usage ; exit 0 ;;
? ) print_usage ; exit 1 ;;
@ -172,7 +175,7 @@ elif [ ! -t 0 ] ; then # stdin
check '' '' "$subject"
else
if [ $number -eq 0 ] ; then
commits=$(git rev-list --reverse origin/master..)
commits=$(git rev-list --reverse $range)
else
commits=$(git rev-list --reverse --max-count=$number HEAD)
fi