prettyice 2011-12-16
@echooff
setSVN_BINDIR=C:\"ProgramFiles"\"VisualSVNServer"\bin
setlocalenableextensionsenabledelayedexpansion
setrepos="%1"
setrev="%2"
setuser="%3"
setpropname="%4"
setaction="%5"
setsuperUser=admin
sets=%SVN_BINDIR%\svnlookauthor"%repos%"-r"%rev%"
remusebackq中的集合对于路径用双引号,字符串用单引号,命令用后引号,这里用的就是后引号。
for/f"usebackq"%%kin(`%s%`)do@setvar=%%k
setrightUser=0
if"%3"=="%superUser%"setrightUser=1
if"%3"=="%var%"setrightUser=1
if%rightUser%==0gotoERROR_USER
goto:SUCCESS_EXIT
:ERROR_USER
echoyoucanonlymodifyyourownlog.>&2
exit1
:SUCCESS_EXIT
IF%propname%=="svn:log"exit0
ECHO"Changingrevisionproperties%propname%isprohibited">&2
EXIT1
pub_svnserve.conf的 pub_authz.conf的配置文件有非法字符的原因引起,需要查找pub_authz.conf提的非法内容比如多余的空格删除或直接将pub_authz.conf