`
rieei
  • 浏览: 70252 次
  • 性别: Icon_minigender_2
  • 来自: 大连
社区版块
存档分类
最新评论

svn 修改提交日志

阅读更多
hooks 目录下
新建一个 pre-revprop-change.bat文件 内容如下

REM SVN pre-revprop-change hook allows edit of logmessages from TSVN

setlocal
set REPOS=%1
set REV=%2
set USER=%3
set PROPNAME=%4
set ACTION=%5

if not "%ACTION%"=="M" goto refuse
if not "%PROPNAME%"=="svn:log" goto refuse
goto OK

:refuse
echo Cann't set %PROPNAME%/%ACTION%, only svn:log is allowed 1>&2
endlocal
exit 1

:OK
endlocal
exit 0

















=========================
other
1。强制写日志
在每次提交的时候写明提交的目的是一个很好的习惯,Subversion默认没有提供,但是可以通过钩子实现:将下面的代码存为放到版本库的hooks目录下即可,当你不写日志提交的话就会报告错误。
文件名:pre-commit-log.bat
@echo off
setlocal
set REPOS=%1
set TXN=%2
rem check that logmessage contains at least 5 characters
svnlook log "%REPOS%" -t "%TXN%" | findstr ".........." > nul
if %errorlevel% gtr 0 goto err
exit 0
:err
echo Empty log message not allowed. Commit aborted! 1>&2
exit 1

2。可以修改历史日志
历史上的日志写的不好,我们希望修改,默认对Subversion是不允许的,并且会提示需要创建pre-revprop-change钩子。最简单的方式是创建一个空白的pre-revprop-change.bat文件放到版本库的hooks目录下,但是这种方式不够严格,用户具备了修改所有属性的权利,例如修改作者的权利(可以提交垃圾然后栽赃嫁祸了)。所以要限制用户只能修改日志,所以有了下面的代码,将其存为pre-revprop-change.bat放到版本库的hooks目录下即可。
文件名:pre-revprop-change.bat
REM SVN pre-revprop-change hook allows edit of logmessages from TSVN

setlocal
set REPOS=%1
set REV=%2
set USER=%3
set PROPNAME=%4
set ACTION=%5

if not "%ACTION%"=="M" goto refuse
if not "%PROPNAME%"=="svn:log" goto refuse
goto OK

:refuse
echo Cann't set %PROPNAME%/%ACTION%, only svn:log is allowed 1>&2
endlocal
exit 1

:OK
endlocal
exit 0

摘自:http://www.cnblogs.com/greatqn/articles/1272769.html

版本库生成后,hooks目录下就存在一些钩子脚本的模板,用户可以作为参考。把pre-revprop-change.tmpl复制为pre-revprop-change.bat,再修改里面的脚本,钩子就设置好了。

for /f "usebackq" %%k in (`svnlook author %1 -r%2`) do @set var=%%k

if "%3" == "%var%" goto test
if "%3" == "li"    goto test
exit 1

:test
if "%4" == "svn:log" exit 0
echo Property '%4' cannot be changed >&2
exit 1




只允许用户修改自己的svn日志的钩子脚本



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/starnight_cbj/archive/2010/09/25/5904654.aspx
分享到:
评论

相关推荐

    svn提交日志导出工具v4.6

    《svn提交日志导出工具v4.6详解》 在软件版本控制的世界里,Subversion(简称svn)是一款广泛使用的版本控制系统,它允许开发者跟踪和管理代码的修改历史,协同工作并保持代码库的一致性。对于svn的日常管理,有一...

    svn提交日志导出工具v4.5

    【svn提交日志导出工具v4.5】是一款基于Java Swing界面的实用程序,专为开发者设计,用于轻松地导出Subversion(SVN)仓库的提交日志。该工具利用了强大的SVNKit库,这是一个纯Java实现的SVN客户端库,使开发者能够...

    svn提交日志导出工具v4.1

    由于开发人员对日常工作难免提交svn文件,在项目发版...本工具是导出svn服务器提交日志,可以按照提交人过滤,提交日期过滤,并且可以生成修改文件清单并有去重功能。本版本是新版本添加了若干功能,详见里面的说明文件

    svn强制写日志和可修改log功能

    2. **第三方工具或服务**:有一些第三方工具和服务提供了修改已提交日志的功能,如`Subversion Edge`或`VisualSVN Server`等。这些工具通常提供图形化界面,使得操作更为直观。 总的来说,通过编写和配置svn钩子...

    svn提交设置--日志

    1,svn提交时强制填写日志。 2,修改日志只能修改自己的。 压缩包包含两个文件:pre-commit,pre-revprop-change。 更新:解决提示显示的乱码问题。 使用方法:...

    svn提交日志长度限制脚本

    svn提交日志长度限制脚本,其中svnlook.exe所在路径修改成你实际安装svn server路径即可。

    SVN属性配置:必须输入日志/日志模版

    在SVN中,`svn:log`属性是用于存储提交日志的,当用户执行`svn commit`命令时,系统会检查这个属性,如果未设置或者日志消息为空,提交将会被阻止,以确保每次提交都有清晰的变更记录。这对于团队协作和代码管理至关...

    根据SVN的更新日志导出部署目录结构的更新文件

    根据SVN更新日志,结合eclispse/或其他IDE工具导出war包解压出来就是部署的目录结构了;再把开发的工具和解压的全量更新文件以及导出的SVN更新日志放在同级目录,利用插件把SVN更新日志的增量更新文件提取生成同部署...

    修改SVN日志

    ### 修改SVN日志:深入理解与实践 #### 核心知识点解析 **Subversion (SVN)** 是一款广泛使用的版本控制系统,它帮助开发者管理代码变更、协作开发以及追踪历史记录。SVN的一个关键特性是其日志系统,用于记录每一...

    svn提交日志导出工具源码

    由于开发人员对日常工作难免提交svn文件,在项目发版的时候...本工具是导出svn服务器提交日志,可以按照提交人过滤,提交日期过滤,并且可以生成修改文件清单并有去重功能 本资源是源码,如果有不足之处,请指出,谢谢

    svn限制强制写日志及只能修改自己日志脚本

    ### SVN限制强制写日志及只能修改自己日志...通过以上步骤,不仅可以限制用户只能修改自己的日志,而且还能确保每次提交都必须带有日志信息,同时也能实现BugFree与SVN的有效整合,从而提高团队的工作效率和代码质量。

    svn 日志导出 增量补丁工具

    svn日志记录了项目历史上的每一次提交,包括提交者、提交时间、提交消息等信息。通过查询日志,开发者可以查看过去对代码所做的更改,找出特定的修改或回溯错误。 筛选svn日志通常是通过命令行工具`svn log`完成的...

    SVN常用操作----查看代码提交以及改动记录方法

    在团队环境中,通过SVN的"更新"和"提交"功能,开发者可以同步远程仓库的最新代码,同时将自己的修改推送到仓库。这确保了所有成员都在同一版本上工作,避免了冲突和数据丢失。 ### 8. 解决冲突 当多人对同一部分...

    windows下svn限制强制写日志及只能修改自己日志脚本.doc

    通过修改`pre-commit.bat`,我们可以添加检查提交日志内容是否达到最小长度的条件。例如,如果提交日志少于指定字符数(例如10个字符),脚本会阻止提交并显示错误信息,提示用户提交必须包含有意义的日志。这样可以...

    TortoiseSVN修改日志的设置

    在默认情况下,Subversion不允许修改已提交的修订版本的日志,但通过配置`pre-revprop-change`脚本,可以启用这一功能。 在`pre-revprop-change.bat`文件中,我们可以编写批处理命令或调用其他程序来实现特定的行为...

    SVN提交代码时格式

    #### 一、SVN提交日志(Log)的重要性 版本控制系统如SVN(Subversion)对于软件开发团队而言是非常重要的工具之一,它可以帮助团队成员协同工作并管理项目的源代码历史记录。而在提交代码时填写合适的提交日志(Log)...

    svn提交文件自动邮件提醒

    SVN允许团队成员对代码进行版本控制,跟踪每一次修改,以便于协作和回溯。在某些场景下,我们需要在 SVN 提交代码时自动发送邮件通知,这样可以让团队成员实时了解项目的更新情况。本文将详细讲解如何实现"svn提交...

    svn提交日志导出工具新版本

    由于开发人员对日常工作难免提交svn文件,在项目发版的时候总是要记住自己修改了哪些文件 本工具是导出svn服务器提交日志,可以按照提交人过滤,提交日期过滤,并且可以生成修改文件清单 比上一个版本添加了去重功能

    svn提交失败

    当多个人同时修改同一份文件的不同部分时,SVN 在合并这些更改时可能会产生冲突。解决冲突的方法包括手动解决(通过比较本地版本和服务器版本,决定保留哪些更改)、使用SVN提供的冲突解决工具,或者与团队成员沟通...

    SVN半自动提交脚本

    可自动提交预设的文件,利用windows的计划任务可每天定时对文件进行提交。 可自行修改要提交的文件路径及日志的填写。

Global site tag (gtag.js) - Google Analytics