Daily svn log report (cron)

SVN-nek van egy elég jó beépített feature-je, ami minden egyes commit után küld egy emailt. Ez már egy relatív kis csoportnál is masszív zajt eredményez. Ha azt akarod csekkolni, hogy melyik szekciót melyik kolléga update-eli, akkor sokkal egyszerűbb egy napi összesítő emailt küldetni magadnak. Csakhogy ez egy kis programozással jár, és ha az SVN fine tuning lehetősége nem a saját kezedben van, akkor lehet, hogy jobban jársz, ha saját magad csinálod.

Én így csináltam. A shell skriptet bedobtam a cron-ba, most naponta egyszer lefut és én boldogan nézem az eredményt.


#!/bin/bash

YOUR_DIR="/home"
SVNHEAD="$YOUR_DIR/svnhead.txt"
REPOSITORY="https://svn/repos"
EMAIL="email@domain"

s=$(<$SVNHEAD); set -- $s; rev=$1; if [ -z $1 ] then # default value rev=0; fi svn log $REPOSITORY --revision $rev:HEAD -v | mail -s 'svn commit report ' $EMAIL mv $SVNHEAD $YOUR_DIR/svnhead.bak svn info $REPOSITORY |grep '^Revision:' | sed -e 's/^Revision: //' > $SVNHEAD