SVN服务端提交日志不能为空,限制文件大小和文件类型(windows)

  1. windows环境下,修改svn的pre-commit hook以实现提交日志不能为空,限制文件大小和文件类型。
  1. 将下列代码复制粘贴进去即可。
bash 复制代码
@echo off
setlocal enabledelayedexpansion
set REPOS=%1
set TXN=%2
rem 限制的文件大小byte
set MAX_SIZE=51200

for /f "delims=" %%a in ('svnlook changed -t %TXN% %REPOS%') do (
    set var=%%a
    for /f %%i in ('svnlook filesize -t %TXN% %REPOS% !var:~4!') do (
        if %%i gtr %MAX_SIZE% (
            set /a size=%%i/1024
            echo 文件大小超出限制! File: !var:~4! Size: !size!KB 1>&2
            goto err_fileSize

        )
    )
)

rem 日志不能为空,至少输入十个字符(几个点就是几个字符)
svnlook log %REPOS% -t %TXN% | findstr ".........." > nul
if %errorlevel% gtr 0 goto err_log

rem 限制文件类型
rem svnlook changed -t "%TXN%" "%REPOS%" | findstr "crf$"
rem if %errorlevel% EQU 0 (goto err_suffix)
rem svnlook changed -t "%TXN%" "%REPOS%" | findstr "d$"
rem if %errorlevel% EQU 0 (goto err_suffix)
rem svnlook changed -t "%TXN%" "%REPOS%" | findstr "o$"
rem if %errorlevel% EQU 0 (goto err_suffix)

exit 0

:err_log
echo 日志过短或为空!(不小于10个字符) 1>&2
exit 1

:err_fileSize
exit 2

:err_suffix
echo 请勿提交受限制的文件类型!(crf,d,o) 1>&2
exit 3
相关推荐
充值内卷1 小时前
WPF入门教学四 WPF控件概述
windows·ui·wpf
baowxz3 小时前
svn回退到以前历史版本修改并上传
svn·回退到历史版本·修改并上传·回退到以前版本
程序猿小D14 小时前
第二百三十五节 JPA教程 - JPA Lob列示例
java·数据库·windows·oracle·jdk·jpa
iummature16 小时前
ZLMediaKit Windows编译以及使用
windows
周伯通*19 小时前
Windows上,使用远程桌面连接Ubuntu
linux·windows·ubuntu
GDAL1 天前
GNU力量注入Windows:打造高效跨平台开发新纪元
服务器·windows·gnu
小徐敲java1 天前
Windows本地制作java证书(与jeecgboot配置本地证书ssl问题)
java·windows·ssl
春蕾夏荷_7282977251 天前
electron nsis打包windows应用程序
javascript·windows·electron·nsis
偷偷小野猪1 天前
Windows 常用的键盘快捷键总结
windows
Splashtop高性能远程控制软件1 天前
centos远程桌面连接windows
linux·windows·centos·远程控制·远程桌面