create-pull-request: Implement -d option
This options allows to generate patches against relative directory by using git format-patch --relative option. See more details about --relative option in git diff manual page. For example generating bitbake patchsets from poky can be done this way: create-pull-request -u contrib -d ./bitbake (From OE-Core rev: 9b544125e1e3d2cc2db8f5d20d6fd0746f8cef5d) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
363bec05e6
commit
90bc2f35d0
|
@ -34,7 +34,7 @@ RFC=0
|
||||||
usage() {
|
usage() {
|
||||||
CMD=$(basename $0)
|
CMD=$(basename $0)
|
||||||
cat <<EOM
|
cat <<EOM
|
||||||
Usage: $CMD [-h] [-o output_dir] [-m msg_body_file] [-s subject] [-r relative_to] [-i commit_id] -u remote [-b branch]
|
Usage: $CMD [-h] [-o output_dir] [-m msg_body_file] [-s subject] [-r relative_to] [-i commit_id] [-d relative_dir] -u remote [-b branch]
|
||||||
-b branch Branch name in the specified remote (default: current branch)
|
-b branch Branch name in the specified remote (default: current branch)
|
||||||
-c Create an RFC (Request for Comment) patch series
|
-c Create an RFC (Request for Comment) patch series
|
||||||
-h Display this help message
|
-h Display this help message
|
||||||
|
@ -45,17 +45,19 @@ Usage: $CMD [-h] [-o output_dir] [-m msg_body_file] [-s subject] [-r relative_to
|
||||||
-r relative_to Starting commit (default: master)
|
-r relative_to Starting commit (default: master)
|
||||||
-s subject The subject to be inserted into the summary email
|
-s subject The subject to be inserted into the summary email
|
||||||
-u remote The git remote where the branch is located
|
-u remote The git remote where the branch is located
|
||||||
|
-d relative_dir Generate patches relative to directory
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
$CMD -u contrib -b nitin/basic
|
$CMD -u contrib -b nitin/basic
|
||||||
$CMD -u contrib -r distro/master -i nitin/distro -b nitin/distro
|
$CMD -u contrib -r distro/master -i nitin/distro -b nitin/distro
|
||||||
$CMD -u contrib -r master -i misc -b nitin/misc -o pull-misc
|
$CMD -u contrib -r master -i misc -b nitin/misc -o pull-misc
|
||||||
$CMD -u contrib -p "RFC PATCH" -b nitin/experimental
|
$CMD -u contrib -p "RFC PATCH" -b nitin/experimental
|
||||||
|
$CMD -u contrib -i misc -b nitin/misc -d ./bitbake
|
||||||
EOM
|
EOM
|
||||||
}
|
}
|
||||||
|
|
||||||
# Parse and validate arguments
|
# Parse and validate arguments
|
||||||
while getopts "b:chi:m:o:p:r:s:u:" OPT; do
|
while getopts "b:cd:hi:m:o:p:r:s:u:" OPT; do
|
||||||
case $OPT in
|
case $OPT in
|
||||||
b)
|
b)
|
||||||
BRANCH="$OPTARG"
|
BRANCH="$OPTARG"
|
||||||
|
@ -63,6 +65,9 @@ while getopts "b:chi:m:o:p:r:s:u:" OPT; do
|
||||||
c)
|
c)
|
||||||
RFC=1
|
RFC=1
|
||||||
;;
|
;;
|
||||||
|
d)
|
||||||
|
RELDIR="$OPTARG"
|
||||||
|
;;
|
||||||
h)
|
h)
|
||||||
usage
|
usage
|
||||||
exit 0
|
exit 0
|
||||||
|
@ -170,10 +175,13 @@ if [ -e $ODIR ]; then
|
||||||
fi
|
fi
|
||||||
mkdir $ODIR
|
mkdir $ODIR
|
||||||
|
|
||||||
|
if [ -n "$RELDIR" ]; then
|
||||||
|
ODIR=$(realpath $ODIR)
|
||||||
|
extraopts="--relative=$RELDIR"
|
||||||
|
fi
|
||||||
|
|
||||||
# Generate the patches and cover letter
|
# Generate the patches and cover letter
|
||||||
git format-patch -M40 --subject-prefix="$PREFIX" -n -o $ODIR --thread=shallow --cover-letter $RELATIVE_TO..$COMMIT_ID > /dev/null
|
git format-patch $extraopts -M40 --subject-prefix="$PREFIX" -n -o $ODIR --thread=shallow --cover-letter $RELATIVE_TO..$COMMIT_ID > /dev/null
|
||||||
|
|
||||||
|
|
||||||
# Customize the cover letter
|
# Customize the cover letter
|
||||||
CL="$ODIR/0000-cover-letter.patch"
|
CL="$ODIR/0000-cover-letter.patch"
|
||||||
|
|
Loading…
Reference in New Issue