aboutsummaryrefslogblamecommitdiff
path: root/sh/eci.sh
blob: fef78b632b3677e3fd04357a0dfcdb177a41818e (plain) (tree)
1
2
3
4
5
6
           
 

                              
                           
 












                                                                 
              





                                   
                  
 
                
 

                                              
         
 
                         


                                            
                
 

                                            
                                        
                                
                      


               

                                                                                                                    
 

                                                                                                                  
 

                                                

                                                         
 
                                  
 
                              
#!/bin/bash

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 "$(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/')

\tFile changes :
$(svn st | grep -v '^?' | sed -r 's/(.*)/\t\1/')

$(cat $PROJECT_PATH/ChangeLog)" > $PROJECT_PATH/ChangeLog

svn ci -m "$(cat ${TMPFILE}.send)"

rm -f $TMPFILE ${TMPFILE}.send