#!/bin/zsh PROJECT_PATH="${HOME}/dev/espik" TMPFILE="/tmp/.eci-${RANDOM}" if [ ! -e ${PROJECT_PATH} ]; then echo "PROJECT_PATH defined (${PROJECT_PATH}) doesn't exist" exit -1 fi if [ -z "${EDITOR}" ]; then echo "EDITOR is not set" exit -1 elif [ ! -e $(which ${EDITOR}) ]; then echo "EDITOR doesn't exist" exit -1 fi touch ${TMPFILE} if [ ! -e ${TMPFILE} ]; then echo "Cannot write to /tmp" echo "Check perms ;)" exit -1 fi chmod 600 ${TMPFILE} cd ${PROJECT_PATH} echo " --This line and thoses under will be ignored-- $(svn st) $(svn diff)" >> ${TMPFILE} SUM_ORI=$(cksum ${TMPFILE} | awk '{print $1}') ${EDITOR} ${TMPFILE} SUM_NEW=$(cksum ${TMPFILE} | awk '{print $1}') if [ "${SUM_ORI}" = "${SUM_NEW}" ]; then echo "Enter something !" rm -f ${TMPFILE} exit -1 fi DELCOMMENTFROM=$(grep -n -- '--This line and thoses under will be ignored--' ${TMPFILE} | head -n 1 | cut -d ':' -f 1) head -n $(($DELCOMMENTFROM-1)) ${TMPFILE} > ${TMPFILE}.send echo -e "$(date "+%d/%m/%y %X") - from $(whoami)@$(if [ `uname -o` = "Cygwin" ]; then hostname; else hostname -f; fi) $(cat ${TMPFILE}.send | sed -r 's/(.*)/\t* \1/g') \tFiles Changes: $(svn st | grep -v '^?' | sed -r 's/^D(.*)/-\1/g' 's/^M(.*)/~\1/g' 's/^A(.*)/+\1/g' | sed -r 's/(.*)/\t\1/g') $(cat ${PROJECT_PATH}/ChangeLog)" > ${PROJECT_PATH}/ChangeLog svn ci -m "$(cat ${TMPFILE}.send)" rm -f ${TMPFILE} ${TMPFILE}.send