devtools: fix version search with git < 2.7.0
The script git-log-fixes.sh (used in check-git-log.sh) looks for git tags to find the version where a bug is introduced. In DPDK 17.08, the script has been fixed to ignore tags from non current branch. It was using the option --merged which was introduced in git 2.7.0. As git 2.7.0 is not so old, a fallback is provided for some years. The fallback is replacing the tag --merged option by a branch filter. If the tag is found in the branch, the branch name is replaced by the tag. This script could be improved to allow using another reference branch, instead of hard coding HEAD branch (the current one). Fixes: 26857dabb3c9 ("devtools: ignore non merged tags for backport") Cc: stable@dpdk.org Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Tested-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
This commit is contained in:
parent
ca13673513
commit
5d65895d9c
@ -66,7 +66,16 @@ range="$*"
|
||||
# get major release version of a commit
|
||||
commit_version () # <hash>
|
||||
{
|
||||
tag=$(git tag -l --contains $1 --merged | head -n1)
|
||||
# use current branch as history reference
|
||||
local refbranch=$(git rev-parse --abbrev-ref HEAD)
|
||||
local tag=$( (git tag -l --contains $1 --merged $refbranch 2>&- ||
|
||||
# tag --merged option has been introduced in git 2.7.0
|
||||
# below is a fallback in case of old git version
|
||||
for t in $(git tag -l --contains $1) ; do
|
||||
git branch $refbranch --contains $t |
|
||||
sed "s,.\+,$t,"
|
||||
done) |
|
||||
head -n1)
|
||||
if [ -z "$tag" ] ; then
|
||||
# before -rc1 tag of release in progress
|
||||
make showversion | cut -d'.' -f-2
|
||||
|
Loading…
x
Reference in New Issue
Block a user