Quick and Dirty CI/CD Git Based Release Notes

02/17/20141 Min Read — In Ops, Resources

Have you ever needed a quick auto-generated release notes for your daily builds?

Well, here ya go!

#!/bin/bash
script_name=$(basename $0)
usage()
{
cat << EOF >&2
usage: ${script_name} <since>
EOF
}
# Check we have at least one arg (the "since" revision)
if [ $# == 0 ]; then
since=$(git describe --tags --abbrev=0 HEAD^1)
# usage
echo "Commit notes since $since:" >&2
echo "" >&2
else
since="$1"
fi
git log --format="- %s" --no-merges --reverse "${since}".. \
| grep -v "\[minor\]" | tee /dev/tty | pbcopy