如何设置SVN的日志模板?

如何设置SVN的日志模板?,第1张

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

在你客户端的存放SVN版本库的文件夹上点右键,选择TortoiseSVN-属性,在d出窗口点击新建,然后在右上角属性的下拉菜单中选择tsvn:logminsize,在下面取值栏内填写要设置的最小长度,比如10,然后确定,然后执行提交 *** 作

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 happensbut

# 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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11358735.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存