svn强制添加注释问题处理

公司的windows服务器下,svn服务需要添加强制注释hook,按照网上格式,做了个bat脚本,具体内容如下:

setlocal
set SVN_BINDIR=""C:\Program Files\Subversion Server"
set REPOS=%1
set TXN=%2
rem check that logmessage contains at least 10 characters
%SVN_BINDIR%\svnlook log "%REPOS%" -t "%TXN%" | findstr "......" > nul
if %errorlevel% gtr 0 goto err
exit 0
:err
echo 提交时必须填写说明(Message),本次提交被终止! 1>&2
echo "%REPOS%" -t "%TXN%" 1>&2
exit 1


===但是测试时候问题来了,客户端老是提示:

svnlook: Expected FS format between '1' and '3'; found format '6' 

加了注释也提交不上去了,哥把脚本啥的仔细检查了N遍,换了各种网上处理方式,百度实在没用,哥们哪里是轻易放弃的人,去看了英文网站,发现有人在改工程所属db下的format文件,据说可以解决问题,于是乎将format文件拷贝到桌面上,用记事本打开,将开头的6改成了3,问题解决。

错误是由于SVN server(TortoiseSVN) 和 SVN client (小乌龟)的 FS 格式不匹配,在svn文件夹里找到svn文件夹db/format文件,记事本打开,将6改为1至5之间的一个数,我改为了3

以下有俩需要注意的地方

1、一定要改db下的format,哥一开始改了工程下的,将5改为3,结果客户端连接不上了!还好有备份替换回去好使了。

2、db下format文件是不允许修改的,需要如下技巧才行:把format文件复制到桌面,在桌面修改后点击保存(会提示无法保存,因为是只读文件)——>选择默认保存为txt文件——>将桌面上的format删除——>将刚刚保存下来的format.txt文件去掉后缀名变成format文件——>将该format文件替换掉 svn文件夹db/format文件——>OK了

展开阅读全文

没有更多推荐了,返回首页