`
天涯海角tour
  • 浏览: 170780 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

svn 修改历史日志

 
阅读更多

转载:http://hi.baidu.com/tsd3698/blog/item/2539164525db5c3c879473f6.html

找了半天这位最好了,能解决问题亲测

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

 

分享到:
评论

相关推荐

    svn功能源代码py

    if(svn更改)---commit成功 返回一个版本号 [version]=1,2,3,4,etc else if(未更改)----commit失败 printf“no modification” 7.revert:还原所有 =update 默认 (~) 8.log [version] if [version]=n 显示n的...

    svn在linux下的使用(svn命令)

    svn 是一个版本控制系统,允许多人合作开发项目,追踪文件的变化历史记录,避免文件冲突和丢失。下面介绍 svn 在 Linux 下的使用和常用命令。 1. 将文件 checkout 到本地目录 svn checkout 命令用于将文件从版本库...

    SVN使用手册中文版快速入门

    为什么日志说通过Apache(ra_dav)提交或导入的文件“(no author)”? 我偶然在Windows得到“Access Denied”错误,它们看起来随即出现。 在FreeBSD,某些操作(特别是svnadmin create)有时会挂起。 我可以在web...

    SVN使用手册中文版.chm

    为什么日志说通过Apache(ra_dav)提交或导入的文件“(no author)”? 我偶然在Windows得到“Access Denied”错误,它们看起来随即出现。 在FreeBSD,某些操作(特别是svnadmin create)有时会挂起。 我可以在web...

    SVN使用教程总结

    通过 SVN,可以记录每一次文件和目录的修改,快速恢复到早期版本,检查数据修改的历史。 一、SVN 服务器搭建和使用 1.下载和安装 SVN 服务器:首先需要下载 SVN 服务器,下载地址为 ...

    SVN版本管理工具使用教程

    还原至历史中的某个版本,选中某个文件,点击“显示日志”,选中我们要还原的历史版本,点击右键“复原到此版本”。 十、恢复删除本地删除 如果我们在客户端 delete 了一个文件,但还没有 commit,我们可以使用 ...

    SVN与CVSpdf格式详细说明书

     ApacehPasswd就是用来修改上面配置中的C:\SVN_repos\passwd这个文件的  使用方法:  1将文件ApachePasswd.cgi及ApacehPasswd.cgi.ini复制到Apache的CGI脚本目录下,通常是cgi-bin目录。  2确保cgi-bin目录可以...

    SVN操作手册中文版网页格式

    4.9.7. 修改日志消息和作者 4.9.8. 过滤日志信息 4.9.9. 统计信息 4.9.9.1. 统计页 4.9.9.2. 作者提交次数统计页 4.9.9.3. 按日期提交统计页 4.9.10. 离线方式 4.9.11. 刷新视图 4.10. 查看差异 4.10.1. ...

    使用Subversion进行版本控制(针对 Subversion 1.4)

    检查历史修改的详情 比较本地修改 比较工作拷贝和版本库 比较版本库与版本库 浏览版本库 svn cat svn list 获得旧的版本库快照 有时你只需要清理 总结 3. 高级主题 版本清单 修订版本关键字 版本日期 属性 为什么...

    TortoiseSVN和TortoiseMerge的中文帮助文档(chm格式)

    4.9.7. 修改日志消息和作者 4.9.8. 过滤日志信息 4.9.9. 统计信息 4.9.9.1. 统计页 4.9.9.2. 作者提交次数统计页 4.9.9.3. 按日期提交统计页 4.9.10. 离线方式 4.9.11. 刷新视图 4.10. 查看差异 4.10.1. 文件差异 ...

    Cornerstone_4.1破解版mac版SVN客户端

    此外,借助内置的日志记录引擎和简单风格但有用的项目时间表,Cornerstone可让您轻松浏览项目的历史记录。 Cornerstone的零配置要求是另一个额外的功能,旨在使其成为任何想要使用Mac处理修订控制项目的Subversion...

    Git&GitHub;学习笔记

    协同修改  多人并行不悖的修改服务器端... 查看修改人、修改时间、修改内容、日志信息。  将本地文件恢复到某一个历史状态。  分支管理  允许开发团队在工作过程中多条生产线同时推进任务,进一步提高效率。

    全套Git&码云&TortoiseGit系列教程.pdf

    在没有版本控制的情况下,开发团队可能会遇到备份多个版本、浪费存储空间、花费时间长、难以恢复至以前的历史版本、容易引发 BUG、解决代码冲突困难、难于追溯问题代码的修改人和修改时间、修改内容、日志信息等问题...

    subversion-TortoiseSVN-使用手册(CHM+HTML,中英完整版)

    5.8.4. 修改日志消息和作者 5.8.5. 过滤日志信息 5.8.6. 统计信息 5.8.6.1. 统计页 5.8.6.2. 作者提交次数统计页 5.8.6.3. 按周提交次数统计页 5.9. 查看差异 5.9.1. 文件差异 5.9.2. 比较文件夹 5.9.3. 使用...

    idea-vcswatch:VCS watch 是一个插件,它会定期检查当前项目存储库中的任何更改

    VCS watch是一个插件,它会定期检查当前项目存储库中的任何更改。 用 Java 1.6 编译 特征 支持 GIT 存储库 支持SVN存储库 支持 Mercurial 存储库 功能请求 从监视中排除项目存储库 指定观察间隔 安装 使用IDE内置...

    Git权威指南PDF完整版

    11.4.3 浏览日志:git log/ 146 11.4.4 差异比较:git diff/ 150 11.4.5 文件追溯:git blame/ 151 11.4.6 二分查找:git bisect/ 152 11.4.7 获取历史版本/ 156 第12章 改变历史/ 157 12.1 悔棋/ 157 12.2 多步悔棋...

    Git Community Book(中文版)

    修改你的历史 高级分支与合并 查找问题的利器 - Git Bisect 查找问题的利器 - Git Blame Git和Email 定制Git Git Hooks 找回丢失的对象 子模块 6. Git生态体系 Git 与之 Windows 使用Git进行系统部署 与 ...

    jquery图片播放器 - jquery.fn.imgplayer-1.2

    更新日志: v1.2(2010-02-24): 1.修改了标题栏右侧冲出容器的bug 2.添加了duration参数,可自定义图片动画效果时间 v1.1(2009-09-23): 1.修改了鼠标停留播放器和序号标签上图片继续播放的问题

    Jenkins管理员操作手册.docx

    增值服务器端,配置了编译模板“compile_templet”,CM维护时修改此模板即可。项目经理新建构建任务时,选择“复制已有Item”复制任务名称 “compile_templet”,提交上线编译单即可。 3.1.新建构建任务 Jenkins...

    git 文件管理PDF存储

    常见的版本控制系统有 CVS、SVN、Git 等。 Git 是一种免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本...

Global site tag (gtag.js) - Google Analytics