在多個developer對同一模塊的代碼作開發修改,提交SVN 時如果不填寫comment信息,很容易造成別的developer的困擾,但是SVN本身並不提供這種強制寫log的功能,而是通過一系列的鉤子程序(我們稱爲hook腳本),在提交之前(pre-commit),提交過程中(start-commit),提交之後(post-commit),調用預定的鉤子程序來完成一些附加的功能
此時可以利用下面的腳本添加一個svn hook強制用戶填寫comment信息
REPOS="$1"
TXN="$2"
SVNLOOK=/usr/bin/svnlook
LOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" |wc -c`
if [ "$LOGMSG" -lt 15 ];
then
echo "Log message can't be empty! you must input more than 15 chars as comment!." 1>&2
exit 1
fi
把上面script添加到對應的svn server 的hook目錄pre-commit文件中去,並且保證該文件具有可執行權限755
效果如下:
然後根據提示輸入相關的comment信息,再次提交則成功
最終結果