#!/bin/sh # # Hook used to produce a commit message based on CHANGES # FILE="$1" SOURCE="$2" COMMIT="$3" case $SOURCE in 'merge') # On merges adds the commit messages found in CHANGES TMP=`mktemp 2> /dev/null || mktemp -t 'mytmpdir'` && \ cat $FILE >$TMP && \ sed -i '/^Merge.*/d' $TMP && \ git diff --cached scilab/CHANGES* |sed -n '/^+/p' |sed -n '/^+++/!p' |sed 's/^.\{1\}//g' >$FILE && \ cat $TMP >>$FILE && \ rm $TMP ;; '') # On normal commit add messages found in CHANGES TMP=`mktemp 2> /dev/null || mktemp -t 'mytmpdir'` && \ cat $FILE >$TMP && \ git diff --cached scilab/CHANGES* |sed -n '/^+/p' |sed -n '/^+++/!p' |sed 's/^.\{1\}//g' >$FILE && \ cat $TMP >>$FILE && \ rm $TMP ;; *) ;; esac