如何修改SVN中已提交的日志

如题所述

1、将版本库repos/hooks/pre-revprop-change.tmp修改成pre-revprop-change

2、为pre-revprop-change加上执行权限:使用命令chmod +x

3、修改pre-revprop-change
#!/bin/sh

# PRE-REVPROP-CHANGE HOOK
#
# The pre-revprop-change hook is invoked before a revision property
# is added, modified or deleted. Subversion runs this hook by invoking
# a program (script, executable, binary, etc.) named 'pre-revprop-change'
# (for which this file is a template), with the following ordered
# arguments:
#
# [1] REPOS-PATH (the path to this repository)
# [2] REVISION (the revision being tweaked)
# [3] USER (the username of the person tweaking the property)
# [4] PROPNAME (the property being set on the revision)
# [5] ACTION (the property is being 'A'dded, 'M'odified, or 'D'eleted)
#
# [STDIN] PROPVAL ** the new property value is passed via STDIN.
#
# If the hook program exits with success, the propchange happens; but
# if it exits with failure (non-zero), the propchange doesn't happen.
# The hook program can use the 'svnlook' utility to examine the
# existing value of the revision property.
#
# WARNING: unlike other hooks, this hook MUST exist for revision
# properties to be changed. If the hook does not exist, Subversion
# will behave as if the hook were present, but failed. The reason
# for this is that revision properties are UNVERSIONED, meaning that
# a successful propchange is destructive; the old value is gone
# forever. We recommend the hook back up the old value somewhere.
#
# On a Unix system, the normal procedure is to have 'pre-revprop-change'
# invoke other programs to do the real work, though it may do the
# work itself too.
#
# Note that 'pre-revprop-change' must be executable by the user(s) who will
# invoke it (typically the user httpd runs as), and that user must
# have filesystem-level permission to access the repository.
#
# On a Windows system, you should name the hook program
# 'pre-revprop-change.bat' or 'pre-revprop-change.exe',
# but the basic idea is the same.
#
# The hook program typically does not inherit the environment of
# its parent process. For example, a common problem is for the
# PATH environment variable to not be set to its usual value, so
# that subprograms fail to launch unless invoked via absolute path.
# If you're having unexpected problems with a hook program, the
# culprit may be unusual (or missing) environment variables.
#
# Here is an example hook script, for a Unix /bin/sh interpreter.
# For more examples and pre-written hooks, see those in
# the Subversion repository at
# http://svn.collab.net/repos/svn/trunk/tools/hook-scripts/ and
# http://svn.collab.net/repos/svn/trunk/contrib/hook-scripts/

REPOS="$1"
REV="$2"
USER="$3"
PROPNAME="$4"
ACTION="$5"

if [ "$USER" != $(/usr/bin/svnlook author -r "$2" "$1") ];then # 判断是否为本人提交的日志
echo "author error!" > $2
exit 1
elif [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then #只能修改日志,不可修改作者
exit 0;
fi
echo "Changing revision properties other than svn:log is prohibited" >&2
exit 1
4、测试
$ svn propedit -r N --revprop svn:log URL (URL可省)
$ svn propset -r N --revprop svn:log "new log message" URL
温馨提示:内容为网友见解,仅供参考
无其他回答

如何修改SVN中已提交的日志
1、将版本库repos\/hooks\/pre-revprop-change.tmp修改成pre-revprop-change 2、为pre-revprop-change加上执行权限:使用命令chmod +x 3、修改pre-revprop-change !\/bin\/sh PRE-REVPROP-CHANGE HOOK The pre-revprop-change hook is invoked before a revision property is added, modified or deleted. ...

如何修改SVN中已提交的日志
exit 1 在属性修改前,该脚本会被执行,如返回0即表示同意修改。另外,注意该目录下本就有一个pre-revprop-change.tmpl,但那个是xNix的shell脚本,windows平台貌似不太好用。然后在客户端就可以正常修改了,其后台应该是调用类似下面的命令:svn propset -r N --revprop svn:log "new log message"...

通过SVN导出项目所有的提交修改删除等日志记录
通过SVN导出项目所有的提交修改删除等日志记录,如果想查看所有的日志信息复制到一个文档里面,那么你看这篇文档就对了。在桌面新建一个text文档或者word文档,修改下自己的文档名称,然后在桌面上单击右键,显示如下图所示(前提是你安装好了SVN工具):点击SVN CheckOut按钮,出现如下所示:在第二步输入...

SVN回退方法总结
然后通过SVN的提交日志,可以找到对应的提交版本(例如下图中的版本980),选中此版本然后点击鼠标右键,此时会弹出3种不同的回退选项:更新项目至版本(Update item to revision)可以看到对应的图标是绿色的,说明它很安全。安全的原因在于使用此选项回退是将工作副本更新到指定版本的操作。它并不是还原操作...

怎么查看svn的修改记录及修改内容
: 选中需要查记录的目录或文件,右键 TortoiseSVN---show log(查看日志),就可以查看到被用户提交的历史记录。

如何设置SVN的日志模板?
服务器端可设置提交时日志的长度限制,日志填写模板能不能设置就不知道了,因为每个提交操作都是从客户端触发的,界面提交的话显示都是客户端的,命令提交的话也是用户手动输入,所以这个想要有统一的模板,在服务器端设置好像没方法可循,或者可以工作中大家约定一个模板都那么写 ...

SVN怎么样回退已提交的部分文件
如果客户端是TortoiseSVN的话,右键点击要回退的文件,选择TortoiseSVN--显示日志,找到要回退的那个版本,右键点击该文件,选择复原到此版本,这时文件会标记成红色感叹号,然后重新提交就行了。

怎么查看svn的提交记录
1、在自己的电脑桌面上,需要找到svn导出的项目。2、下一步通过鼠标右键点击文件夹,选择Show log这一项进入。3、这个时候,会看到所有的相关文件。4、这样一来确定打开一个对象以后,即可查看svn的提交记录了。

日志Linux查看SVN日志一个指南linux查看svn
`svn log https:\/\/svn.url\/path\/to\/repo`这将显示所有已提交到 SVN 仓库中的日志。然后,可以根据需要在任何日志上执行操作:查看版本号,查看提交人,查看更改的类型等。另一种查看 SVN 日志的方法是使用一款叫做 TortoiseSVN 的可视化 SVN 客户端,可以更方便的在 Windows 和 Linux 操作系统上查看...

svn上想回滚代码怎么办
如果未提交,可以直接右键relocate,如果已提交,可以从日志中选择版本或者时间点把需要的版本重新取出来

相似回答