File: changelog.sh

package info (click to toggle)
springlobby 0.255%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 14,228 kB
  • ctags: 14,450
  • sloc: cpp: 76,178; ansic: 61,718; python: 863; sh: 654; perl: 238; xml: 52; makefile: 41; sed: 16
file content (37 lines) | stat: -rwxr-xr-x 928 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#! /usr/bin/env bash

GIT_DIR=$(git rev-parse --git-dir 2>/dev/null)
if [ -z "$GIT_DIR" ]; then
        echo >&2 "fatal: post-receive: GIT_DIR not set"
        exit 1
fi

cd ${GIT_DIR}

REVS1=`git tag -l "r*"`
REVS2=`git tag -l "0*"`
REVS1=($REVS1)
REVS2=($REVS2)

REVS=( ${REVS1[@]} ${REVS2[@]} )

NUMREVS=${#REVS[*]}
OFILE=/tmp/git.html

cat /dev/null > $OFILE
echo "<html><body><ul>" >> $OFILE

for i in $(seq $NUMREVS -1 1) ; do
        if [ $i == $NUMREVS ] ; then
		LINES=$(git diff HEAD ${REVS[$i-1]}  --shortstat)
                echo "<li>HEAD [ $LINES ]:<ul>" >> $OFILE
        else
		LINES=$(git diff ${REVS[$i-1]} ${REVS[$i]} --shortstat) #<-- that's the stats
                echo "<li>${REVS[$i]} [ $LINES ]:<ul>" >> $OFILE
        fi

        git log ${REVS[$i-1]}..${REVS[$i]} --pretty=format:"<li>%s</li>" | grep -v Merge >> $OFILE
        echo "</ul></li>" >> $OFILE
done

echo "</ul></body></html>" >> $OFILE