svn重设日志内容 及 如何修改SVN已提交项目的message log

2024-02-29 18:08

本文主要是介绍svn重设日志内容 及 如何修改SVN已提交项目的message log,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

引自:http://blog.csdn.net/runboying/article/details/7467005

名称

svn propset — Set PROPNAME to PROPVAL on files, directories, or revisions.

概要

svn propset PROPNAME [PROPVAL | -F VALFILE] PATH...
svn propset PROPNAME --revprop -r REV [PROPVAL | -F VALFILE] [TARGET]

描述

设置文件、目录或者修订版本的属性PROPNAMEPROPVAL。第一个例子在工作副本创建了一个版本化的本地属性修改,第二个例子创建了一个未版本化的远程的对版本库修订版本的属性修改(TARGET只是用来确定访问哪个版本库)。

[提示]提示

Subversion has a number of “special” properties that affect its behavior. See第 9.10 节 “Subversion 属性” later in this chapter for more on these properties.

别名

psetps

改变

工作副本;对URL操作时是版本库

访问版本库

只有在对URl操作时会

选项

--changelist ARG
--depth ARG
--encoding ENC
--file (-F) FILE
--force
--quiet (-q)
--recursive (-R)
--revision (-r) REV
--revprop
--targets FILENAME

例子

Set the MIME type for a file:

$ svn propset svn:mime-type image/jpeg foo.jpg 
property 'svn:mime-type' set on 'foo.jpg'

在UNIX系统,如果你希望一个文件设置执行权限:

$ svn propset svn:executable ON somescript
property 'svn:executable' set on 'somescript'

或许为了合作者的利益你有一个内部的属性设置:

$ svn propset owner sally foo.c
property 'owner' set on 'foo.c'

如果你在特定修订版本的日志信息里有一些错误,并且希望修改,可以使用--revprop设置svn:log为新的日志信息:

$ svn propset --revprop -r 25 svn:log "Journaled about trip to New York."
property 'svn:log' set on repository revision '25'

或者,你没有工作副本,你可以提供一个URL:

$ svn propset --revprop -r 26 svn:log "Document nap." \http://svn.red-bean.com/repos
property 'svn:log' set on repository revision '25'

Lastly, you can tell propset to take its input from a file. You could even use this to set the contents of a property to something binary:

$ svn propset owner-pic -F sally.jpg moo.c 
property 'owner-pic' set on 'moo.c'<div>本文转自: <a target=_blank href="http://yin-gang.spaces.live.com/blog/cns%21756af5fdccd70454%21561.entry" style="color: rgb(255, 153, 0); text-decoration: none;">http://yin-gang.spaces.live.com/blog/cns!756af5fdccd70454!561.entry</a></div><div> </div><div> </div><div><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;">直接在TortoiseSVN中修改过往日志,会提示: </p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;">DAV request failed;it's possible that the repository's pre-revprop-change hook either failed or is non-existent
At least one property change failed; repository is unchanged. </p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;">因为SVN库中的日志本身是没有进行版本管理的,为防止误操作导致原日志信息丢失,所以缺省禁止对其进行修改。如果要能在客户端进行修改,必须在repository的hook目录下新建一个pre-revprop-change.bat,内容如下: </p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;">if "%4" == "svn:log" exit 0
echo Property '%4' cannot be changed >&2
exit 1 </p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;">在属性修改前,该脚本会被执行,如返回0即表示同意修改。另外,注意该目录下本就有一个pre-revprop-change.tmpl,但那个是xNix的shell脚本,windows平台貌似不太好用。 </p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;">然后在客户端就可以正常修改了,其后台应该是调用类似下面的命令: </p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;"><strong>svn propset -r </strong><em>N</em><strong> --revprop svn:log "<em>new log message</em>"</strong> URL </p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;">也可以在服务端通过运行下面的命令来做同样的事情,其中FILE是保存新日志信息的文件路径: </p><p style="margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px;">svnadmin setlog REPOS_PATH -r N FILE</p></div>

这篇关于svn重设日志内容 及 如何修改SVN已提交项目的message log的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/759598

相关文章

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

解读GC日志中的各项指标用法

《解读GC日志中的各项指标用法》:本文主要介绍GC日志中的各项指标用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、基础 GC 日志格式(以 G1 为例)1. Minor GC 日志2. Full GC 日志二、关键指标解析1. GC 类型与触发原因2. 堆

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

如何在Spring Boot项目中集成MQTT协议

《如何在SpringBoot项目中集成MQTT协议》本文介绍在SpringBoot中集成MQTT的步骤,包括安装Broker、添加EclipsePaho依赖、配置连接参数、实现消息发布订阅、测试接口... 目录1. 准备工作2. 引入依赖3. 配置MQTT连接4. 创建MQTT配置类5. 实现消息发布与订阅

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项

SpringBoot+Redis防止接口重复提交问题

《SpringBoot+Redis防止接口重复提交问题》:本文主要介绍SpringBoot+Redis防止接口重复提交问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录前言实现思路代码示例测试总结前言在项目的使用使用过程中,经常会出现某些操作在短时间内频繁提交。例

MySQL 打开binlog日志的方法及注意事项

《MySQL打开binlog日志的方法及注意事项》本文给大家介绍MySQL打开binlog日志的方法及注意事项,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录一、默认状态二、如何检查 binlog 状态三、如何开启 binlog3.1 临时开启(重启后失效)

Java实现删除文件中的指定内容

《Java实现删除文件中的指定内容》在日常开发中,经常需要对文本文件进行批量处理,其中,删除文件中指定内容是最常见的需求之一,下面我们就来看看如何使用java实现删除文件中的指定内容吧... 目录1. 项目背景详细介绍2. 项目需求详细介绍2.1 功能需求2.2 非功能需求3. 相关技术详细介绍3.1 Ja

springboot项目中整合高德地图的实践

《springboot项目中整合高德地图的实践》:本文主要介绍springboot项目中整合高德地图的实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一:高德开放平台的使用二:创建数据库(我是用的是mysql)三:Springboot所需的依赖(根据你的需求再