SVN与TortoiseSVN修改日志和强制写日志实现详解
来源:互联网 发布:淘宝投诉商家怎么投诉 编辑:程序博客网 时间:2024/05/17 07:07
在软件开发中使用SVN进行源代码管理已非常普及,缺省情况下,SVN的每次commit是不需要日志log信息,为了便于管理,项目组通常会要求增加填写log习惯,可通过配置SVN的hook实现功能管理,
在"库/hooks"下新建pre-commit.bat文件,通常的Windows下的强制log的hook脚本如下:
@echo off
setlocal
set REPOS=%1
set TXN=%2
rem 保证输入8个字符
svnlook log %REPOS% -t %TXN% | findstr "........" > nul
if %errorlevel% gtr 0 goto :err_action
goto :success
:err_action
echo 你本次版本提交未填写任何变更的日志说明信息. >&2
echo 请补充日志说明信息后再提交代码,例如:功能说明等. >&2
echo 输入的日志信息不少于8个字符说明(或4个汉字),谢谢! >&2
goto :err_exit
:err_exit
exit 1
:success
exit 0
上述脚本虽然可以控制log信息输入,但其缺陷是:如果输入空格数据,如连续8个空格,这个脚本是不能过滤的,这样的结果还是log信息为空。上述增强型过滤空格数据脚本如下:
@echo off
setlocal
set REPOS=%1
set TXN=%2
rem 保证输入8个字符
svnlook log %REPOS% -t %TXN% | findstr "........" > nul
if %errorlevel% gtr 0 goto :err_action
rem 过滤空格字符
svnlook log %REPOS% -t %TXN% | findstr /ic:" " > nul
if %errorlevel% gtr 0 goto :success
:err_action
echo 你本次版本提交未填写任何变更的日志说明信息. >&2
echo 请补充日志说明信息后再提交代码,例如:功能说明等. >&2
echo 输入的日志信息不少于8个字符说明(或4个汉字),谢谢! >&2
echo *******************禁止空格数据***************** >&2
goto :err_exit
:err_exit
exit 1
:success
exit 0
此增强型脚本在笔者的项目组中应用,功能正常,实现了空格过滤功能,请感兴趣的参考。
本文是在转载的基础上,稍微加工。
- SVN与TortoiseSVN修改日志和强制写日志实现详解
- SVN与TortoiseSVN修改日志和强制写日志实现详解
- 设置svn强制写日志和日志可修改方法
- svn强制写日志和可以修改历史日志(svn钩子的应用)
- svn强制写日志
- svn限制强制写日志
- [转]windows下svn限制强制写日志及只能修改自己日志脚本
- Visual SVN 强制写日志 脚本
- svn强制用户写日志提交
- SVN强制填写日志
- windows下svn提交版本时强制写日志
- windows下svn提交版本时强制写日志 .
- SVN的钩子--限制强制写日志(log)
- Linux下SVN提交时强制写日志问题
- Subversion提交强制写日志
- 使用SVN钩子强制提交日志和限制提交文件类型
- svn 修改日志
- Svn修改日志
- PNG24图片兼容IE6解决办法
- JUNIT测试的一些建议
- Django 站点部署和管理常用命令
- 锰汹涸呵躺丶磐渤,誓氛匣继圆!
- 或再涨10%[大盘]5月三大利好可期匚
- SVN与TortoiseSVN修改日志和强制写日志实现详解
- VMware虚拟机上网络连接(network type)的三种模式--bridged、host-only、NAT
- 如何判断一个窗口是否可以接受字符
- 随笔
- 兼容sdk7&iOS7的issue解决小片段总结
- ArcGIS中QueryTask,FindTask,IndentifyTask 之间的区别
- isdigit()极品实现
- js prototype 用法 需与 jQuery extend 方法一起看
- 泛型算法