修改已经提交到Svn的Log注释

本文介绍如何使用Java代码修改已经提交到Svn的版本Log注释,涉及'svn:log'属性设置及pre-revprop-change.bat钩子文件的配置。

修改已经提交到Svn的Log注释

Java代码中对Svn的Log进行再编辑,修改已经提交版本的Log

“svn:log”:要设置的property属性是log
msg:是修改后的注释内容
svnurl:是需要修改的全路径(http:xxx/xx)

/**
 * SVN Set Log Message Property
 *
 * @param repoPath
 * @param revision
 * @param svnUser
 * @param msg
 * @throws SVNException
 */
public static void svnSetProp(String repoPath, Integer revision, SvnUser svnUser, String msg) throws SVNException {

    ISVNOptions options = SVNWCUtil.createDefaultOptions(true);
    svnClientManager = SVNClientManager.newInstance(
            (DefaultSVNOptions) options, svnUser.getUserName(), svnUser.getPassword());
    SVNURL svnurl = SVNURL.parseURIEncoded(repoPath);
    SVNWCClient svnwcClient = new SVNWCClient(svnClientManager, options);
    svnwcClient.doSetRevisionProperty(svnurl, SVNRevision.parse(revision.toString()), "svn:log", SVNPropertyValue.create(msg), false, null);
}

在此之前,需要在svn的仓库的hooks里添加一个pre-revprop-change.bat文件
内容如下:

SET REPOS="%1"
SET REV="%2"
SET USER="%3"
SET PROPNAME="%4"
SET ACTION="%5"
IF %ACTION% == "M" (IF %PROPNAME% == "svn:log" (EXIT 0))
ECHO "Changing revision properties %PROPNAME% is prohibited" >&2
EXIT 1

不需要进行修改,目的是允许对log进行再编辑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值