SVN提交强制写日志设置:
强制设定commit时写一定长度的日志的两种方法:
1.在客户端配置
使用客户端工具:TortoiseSVN
在工作副本目录上,鼠标右键,TSVN,选属性,点增加
再出现的下拉条中选tsvn:logminsize
然后设定必须输入的字节数就可以
2.在服务器端配置
在库的hooks目录下编写脚本(其实就是批处理文件)文件:pre-commit.bat
内容为:
@echo off
setlocal
set REPOS=%1
set TXN=%2
rem check that logmessage contains at least
“D:\Program Files\VisualSVN Server\bin/svnlook” log “%REPOS%” -t “%TXN%” | findstr “………………..” > nul
if %errorlevel% gtr 0 goto err
exit 0
:err
echo 提交必须写20个字以上的日志!>&2
exit 1
想修改限制长度只需要增加或减少”…………………………”中点的数量。
总结:两种方法都可以,推荐用第二种方法,这才能起到强制的作用。第一种办法谁都可以改,强制不了,只能靠自觉。
注意:” D:\Program Files\VisualSVN Server\bin/svnlook “根据自己实际的安装路径,找svn的svnlook.exe文件的位置,使用绝对路径。
修改完重启SVN服务
2、允许修改历史日志的方法
默认是不允许修改的。
在版本库的hooks目录下加入一个批处理文件:pre-revprop-change.bat
@ECHO OFFset repos=%1
set rev=%2
set user=%3
set propname=%4
set action=%5
for /f “usebackq” %%k in (‘svnlook author %repos% -r %rev%’) do @set var=%%k
set rightUser=0
if “%3” == “%superUser%” set rightUser=1
if “%3” == “%var%” set rightUser=1
if %rightUser% == 0 goto ERROR_USER
goto :SUCCESS_EXIT
:ERROR_USER
echo 只允许用户修改自己的日志 >&2
goto ERROR_EXIT
:ERROR_EXIT
exit 1
:SUCCESS_EXIT
exit 0
然后用TortoiseSVN->显示日志->选择待修改日志->右键:编辑日志信息。
但存在一个问题:强制设定commit时写一定长度的日志功能失去。
修改完重启SVN服务即可。
日志模板设置(windows下)
1、日志提交限制
服务器中安装的VisualSVN Server ,在新增Repositoreis时,每个Repositoreis(即新建的项目)下都会有一个hooks(钩子程序)在hooks目录下有一些tmpl文件,作为不同的hooks操作
新建一个pre-commit.bat文件,文件内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | @echo off setlocal set SVN_BINDIR=C:/Program Files/VisualSVN Server/bin/ set REPOS=% 1 set TXN=% 2 rem check that logmessage contains at least 20 characters svnlook log "%REPOS%" -t "%TXN%" | findstr "....." > nul endlocal if %errorlevel% gtr 0 goto err exit 0 :err echo 请填写Log!!!日志格式具体如下: 1 >& 2 echo 【提交类型】:BUG/新功能/需求修改/版本制作/代码整理/解决编译不过/阶段性递交/追加递交 1 >& 2 echo 【问题描述】:该单的描述,从devtrack中复制过来或从功能性对本次修改的描述 1 >& 2 echo 【程序描述】:无(原因分析或者是对修改的技术性描述) 1 >& 2 echo 【修改内容】: 1 >& 2 echo 1 .修改的内容 1 1 >& 2 echo 2 .修改的内容 1 1 >& 2 echo 【相关单号】:无 1 >& 2 echo 【需要测试】:是/否 1 >& 2 exit 1 |
2、日志模板设置
Eclipse设置如下:
2、通过TortoiseSVN设置,步奏如下(转):
1).在SVN所在的文件夹即项目(网络上是全体的,本地是只针对自己),右键TortoiseSVN,选择Properties(属性)
2).在弹出的界面中,选择new…(新建…),然后选择Other
3).在弹出的界面中,Property name项选择tsvn:logtemplate,然后在Property Value中填入模板
【提交类型】:BUG/新功能/需求修改/版本制作/代码整理/解决编译不过/阶段性递交/追加递交
【问题描述】:该单的描述,从devtrack中复制过来或从功能性对本次修改的描述
【程序描述】:无(原因分析或者是对修改的技术性描述)
【修改内容】:
1.修改的内容1
2.修改的内容2
【相关单号】:无
【需要测试】:是/否
4).确定,修改完重启SVN服务。