限制用户删除SVN版本库目录-agan

来源:互联网 发布:java编写的小软件源码 编辑:程序博客网 时间:2024/06/05 02:12

tanzugan 讲项目内容粘贴到pre-commit.bat里面,然后把pre-commit.bat放入版本库目录的hooks的目录下面 。就可以实现现在用户删除版本库目录。

======================================================

@echo on
 
setlocal
set REPOS=%1
set TXN=%2
 
 
for /f %%a in ('svnlook changed "%REPOS%" -t "%TXN%"') do set str=%%a
for /f %%a in ('svnlook author "%REPOS%" -t "%TXN%"') do set user=%%a
 
svnlook log "%REPOS%" -t "%TXN%" | findstr ".........." > nul
 
rem 添加拥有删除权限的用户
set rightuser=0
 
if "%user%"=="tanzugan" set rightuser=1
if "%user%"=="admin" set rightuser=1

 
if %errorlevel% gtr 0 goto errlog
 
if "%str%"=="D" (if %rightUser% == 0  goto err

goto EXIT_SUCCESS

:err
echo 您无删除权限!请联系管理员解决! Commit aborted! 1>&2

)

goto EXIT_SUCCESS

:errlog
echo Empty log message not allowed. Commit aborted! 1>&2

 
pause
:EXIT_SUCCESS

===================================

注意:红色部分注意一下,第一处红色代表的是删除的时候填写的注释个数。第二处是无权限删除的温馨提示。

原创粉丝点击