#!/bin/sh DATE=`date +'%Y-%m-%d'` HEAD="\nn.n.n / $DATE \n==================\n\n" case "$1" in -l|--list) version=`git for-each-ref refs/tags --sort=-authordate --format='%(refname)' \ --count=1 | sed 's/^refs\/tags\///'` if test -z "$version"; then git log --pretty="format: * %s" else git log --pretty="format: * %s" $version.. fi ;; *) CHANGELOG=$1 if test "$CHANGELOG" = ""; then CHANGELOG=`ls | egrep 'change|history' -i` if test "$CHANGELOG" = ""; then CHANGELOG='History.md'; fi fi tmp="/tmp/changelog" printf "$HEAD" > $tmp git-changelog --list >> $tmp printf '\n' >> $tmp if [ -f $CHANGELOG ]; then cat $CHANGELOG >> $tmp; fi mv $tmp $CHANGELOG test -n "$EDITOR" && $EDITOR $CHANGELOG ;; esac