X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=devtools%2Fgit-log-fixes.sh;h=cd5cf8939fe07320bd47d152271ebfe8cec55c6a;hb=b2400a53e67564bd0d64c58de3bdc8277bfaaba3;hp=d590735beee45b73ed3a03c013d0e7361504445d;hpb=df2b82cabfd25bd795a7ecda08eab98e841e7a13;p=dpdk.git diff --git a/devtools/git-log-fixes.sh b/devtools/git-log-fixes.sh index d590735bee..cd5cf8939f 100755 --- a/devtools/git-log-fixes.sh +++ b/devtools/git-log-fixes.sh @@ -66,7 +66,16 @@ range="$*" # get major release version of a commit commit_version () # { - tag=$(git tag -l --contains $1 | 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 @@ -103,10 +112,21 @@ origin_version () # ... done | sort -uV | head -n1 } +# print a marker for stable tag presence +stable_tag () # +{ + if git log --format='%b' -1 $1 | grep -qi '^Cc: *stable@dpdk.org' ; then + echo 'S' + else + echo '-' + fi +} + git log --oneline --reverse $range | while read id headline ; do origins=$(origin_filter $id) - [ -n "$origins" ] || echo "$headline" | grep -q fix || continue + stable=$(stable_tag $id) + [ "$stable" = "S" ] || [ -n "$origins" ] || echo "$headline" | grep -q fix || continue version=$(commit_version $id) if [ -n "$origins" ] ; then origver="$(origin_version $origins)" @@ -116,5 +136,5 @@ while read id headline ; do else origver='N/A' fi - printf '%s %7s %s (%s)\n' $version $id "$headline" "$origver" + printf '%s %7s %s %s (%s)\n' $version $id $stable "$headline" "$origver" done