以下代码部分来自网上
用VBS脚本检查提交log是否足够(长)
pre-commit.bat内容
:: begin of pre-commit.bat
:: 阻止空日志信息的版本的提交
@echo off
SETLOCAL
SET REPOS=%1
SET TXN=%2
cscript D:\svn\repository\demo\hooks\pre-commit.vbs "%REPOS%" "%TXN%"
:: end of pre-commit.bat
pre-commit.vbs代码
'必须显式声明变量
Option Explicit
Private Args
Public wshShell,logExec
Set wshShell = WScript.CreateObject("WScript.Shell")
Set Args = WScript.Arguments
Dim MaxArgs
MaxArgs = 2
'调用主要处理流程
Call Main
'*******************************************************************************
'Main()过程定义
'*******************************************************************************
Private Sub Main()
Call ArgsErr
Call CheckLog
End Sub 'Main()
'*******************************************************************************
'出错退出函数,统一进行资源释放
'*******************************************************************************
private sub ErrExit()
Set Args = Nothing
Set wshShell = Nothing
Set logExec =Nothing
'错误返回
WScript.Quit (1)
end sub 'ErrExit()
'*******************************************************************************
'参数出错处理
'*******************************************************************************
Private Sub ArgsErr()
If (Args.Count < MaxArgs) Then
'在系统信息中记录此错误信息(事件查看器)
wshShell.LogEvent 1, "缺少参数个数!"
'错误信息输出到客户端
WScript.StdErr.WriteLine("缺少参数个数!")
'错误返回
Call ErrExit()
End If
End Sub 'ArgsErr()
'*******************************************************************************
'日志检查
'*******************************************************************************
Private Sub CheckLog()
Dim sReposPath, sRevision, sCommand, sLog
sReposPath = cstr(Args(0))
sRevision = cstr(Args(1))
'合成svnlook 命令
sCommand = "D:/svn/bin/svnlook.exe log " + sReposPath + " -t " + sRevision
Set logExec = wshShell.Exec(sCommand)
'读取svnlook log命令返回结果
Do While Not logExec.StdOut.AtEndOfStream
sLog = logExec.StdOut.ReadAll()
loop
if len(sLog)<=10 then
WScript.StdErr.WriteLine("备注太短,至少10字!")
Call ErrExit()
end if
End Sub
注意VBS代码文件的保存格式使用UNICODE,不然出现乱码,命令行工具需要在系统PATH路径中,否则需要全路径
分享到:
相关推荐
TortoiseSVN-1.10.1.28295-win32-win64-svn-1.10.2TortoiseSVN-1.10.1.28295-win32-win64-svn-1.10.2TortoiseSVN-1.10.1.28295-win32-win64-svn-1.10.2TortoiseSVN-1.10.1.28295-win32-win64-svn-1.10.2TortoiseSVN-...
maven-svn-revision-number-plugin-1.7.jar 资源共享,有需要其他jar包的可以在评论留言,看到后我会陆续上传。
1、cmd进入py文件目录下执行py文件加入--help查看帮助,命令C:\change-svn-wc-format>change-svn-wc-format.py --help 2、cmd执行下面命令,把项目对应SVN从1.5降为1..4 change-svn-wc-format.py d:\Mydropbox\...
TortoiseSVN-1.14.5.29465-x64-svn-1.14.2.rar
TortoiseSVN-1.11.0.28416-x64-svn-1.11.0 英文安装包(64位)
TortoiseSVN- -x64-svn-1.9.7 .msi 下载完成后安装即可;
svn-python-1.6.6.win32-py2.5.exe
64位系统的TortoiseSVN-1.14.3.29387-x64-svn-1.14.2
TortoiseSVN-1.9.7.27907-x64-svn-1.9.7(SVN及汉化包),里面包含SVN1.9.7.27907版本,同版本的汉化包一起
TortoiseSVN-1.14.1.29085-x64-svn-1.14.1.msi
TortoiseSVN-1.8.0.24401-X64-svn-1.8.0 汉化包64位
mod_svn-1.7.10-ap24-x64.zip
TortoiseSVN-1.8.4.24972-x64-svn-1.8.5 中文语言包64位
svn-1.4.5 svn-1.4.5 svn-1.4.5 svn-1.4.5
TortoiseSVN-1.4.0.7501-win32-svn-1.4.0.msi svn客服端安装程序
svn-site-1.8.22svn-site-1.8.22svn-site-1.8.22svn-site-1.8.22
小乌龟TortoiseSVN-1.9.7.27907-x64-svn-1.9.7 包括汉化包
软件开发版本控制工具:SVN客户端(TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.rar)
TortoiseSVN-1.14.0.28885-x64-svn-1.14.0官方安装包64位+中文语言包
TortoiseSVN-1.7.12.24070-win32-svn-1.7.9.msi包含中文语言包