centos6SVNserver
使用svn进行项目的版本控制,如果忘了添加Log,或是Log内容写的有错误。重新添加log或是修改log内容,遇到如下错误:Repositoryhasnotbeenenabledtoacceptrevisionpropchanges;asktheadministratortocreateapre-revprop-changehook
因为SVN库中的日志本身是没有进行版本管理的,为防止误操作导致原日志信息丢失,所以缺省禁止对其进行修改。
解决:修改对应版本库下hooks目录下pre-revprop-change.tmpl文件。
将此文件copy一份,命名为pre-revprop-change,赋予执行权限即可,文件中脚本就是允许编辑修改log;
#chmod+xpre-revprop-change
#!/bin/sh
REPOS="$1"
REV="$"
USER="$3"
PROPNAME="$4"
ACTION="$5"
if["$ACTION"="M"-a"$PROPNAME"="svn:log"];thenexit0;fi
echo"Changingrevisionpropertiesotherthansvn:logisprohibited"
exit1
Linux下只允许用户修改自己的svn日志的钩子脚本(修改pre-revprop-change内容)#!/bin/shREPOS="$1"REV="$"USER="$3"PROPNAME="$4"ACTION="$5"if["$USER"!=$(/usr/local/subversion/bin/svnlookauthor-r"$""$1")];then//判断不是自己提交的文件及日志echo"authorerror!"$exit1elif["$ACTION"="M"-a"$PROPNAME"="svn:log"];then//只能修改日志,不能编辑作者exit0fiecho"Changingrevisionpropertiesotherthansvn:logisprohibited"exit1
注:黑体部分/usr/local/subversion/bin/svnlook根据自己的存储路径不同而做相应的改变
预览时标签不可点收录于合集#个上一篇下一篇