看了N多资料,不知道为什么我总是不成功。现在终于测试成功了,下面是实际操作过程~~
使用bitnami一键安装了subversion,在使用中,希望开发人员提交时必须输入日志内容,可通过以下方法实现。
首先转到相应的库的hook目录中
cd /opt/subversion/repository/hooks
复制一份文件
cp pre-commit.tmpl pre-commit
对pre-commit赋权
chmod +x pre-commit
编辑文件pre-commit
vi pre-commit
注释以下内容
SVNLOOK=/bitnami/subversionstack-linux/output/subversion/bin/svnlook
$SVNLOOK log -t "$TXN" "$REPOS" | \
grep "[a-zA-Z0-9]" > /dev/null || exit 1
commit-access-control.pl "$REPOS" "$TXN" commit-access-control.cfg || exit 1
添加下面内容,其中SVNLOOK,为subversion中bin的地址。
SVNLOOK=/opt/subversion/subversion/bin/svnlook
LOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" | wc -c`
if [ "$LOGMSG" -lt 10 ];
then
echo "Log message can't be empty! you must input more than 10 chars as comment!." 1>&2
exit 1
fi
好了,我还重启了机器,至于要不要重启,我不想试了,怕折腾了,汗。
实现后效果如下:
我怕忘记,我备注下:
vi基本操作
J键-向下
K键-向上
H键-向左
L键-向右
两次D键-删除行
I键-插入(即修改操作)
ESC键-退出(即退出修改)
输入:wq保存文件
输入:q!强制退出(文件修改后)
输入:q退出(文件未修改)