Add mkchangelog.sh script
[blkdevalias.git] / mkchangelog.sh
1 #!/bin/sh
2 # Convert git log to GNU-style ChangeLog file.
3 # (C) Chris
4 if test -d ".git"; then
5     git log --date-order \
6         --format="commit %H%nAuthor: %an %ae%nDate: %ad%n    %s%n" $@ | \
7     sed -e '/^commit.*$/d' | \
8     awk '/^Author/ {sub(/\\$/,""); getline t; print t $0; next}; 1' | \
9     sed -e 's/Author: //g' | \
10     sed -e 's/^Date:   \(.*\)/\* \1/g' | \
11     sed -e 's/\+0000//' -e 's/[0-9]\+\:[0-9]\+\:[0-9]\+ //' | \
12     sed -e 's/^\(.*\) \(\)\t\(.*\)/\3    \1    \2/g' | \
13     sed -e 's/^    /- /' -e 's/^$//'
14     exit 0
15 else
16     echo "No git repository present."
17     exit 1
18 fi