#!/bin/sh

STAGE=/home/jdittmer/src/lk/work/

cd /home/jdittmer/src/lk/git

# cg-update origin || exit 1

RELNAME=`cg-tag-ls | grep -v 'git' | tail -n1 | cut -f1`
RELCOMM=`cg-tag-ls | grep -v 'git' | tail -n1 | cut -f2`
SNAPNAME=`cg-tag-ls | grep -- "$RELNAME-git" | tail -n1 | cut -f1`
SNAPCOMM=`cg-tag-ls | grep -- "$RELNAME-git" | tail -n1 | cut -f2`
CURCOMM=`cat .git/HEAD`

# echo release  $RELNAME $RELCOMM
# echo lastsnap $SNAPNAME $SNAPCOMM 
# echo $CURCOMM

[ "$SNAPCOMM" == "$CURCOMM" ] && exit 0


if [ "$SNAPNAME" == "" ]; then
	CURNAME="$RELNAME-git1"
else
	OLDGITNUM=`echo $SNAPNAME | sed s/^.*-git//`
	NEWGITNUM=`expr $OLDGITNUM + 1`
	CURNAME="$RELNAME-git$NEWGITNUM"
fi

#echo newsnap  $CURNAME $CURCOMM

CURTREE=$CURCOMM
RELTREE=`git-cat-file tag $RELCOMM | head -n1 | cut -f2 -d' '`
# echo $CURTREE:$RELTREE

# This is, unfortunately, in chronological order. Walking the tree would
# be better.
cg-log $CURTREE:$RELTREE > $STAGE/$CURNAME.log
cg-diff -r $CURTREE:$RELTREE | gzip -9 > $STAGE/patch-$CURNAME.gz
cg-tag $CURNAME $CURCOMM

echo New Snapshot $CURNAME
