svn 에서 로그를 수정하는 방법인데.

이걸 허용하면, 로그가 수정되는것에 대한 로그는 안남으니

로그에 대한 신뢰성이 떨어질수도 있게 되니 주의해서 써야 할 듯..


아무튼 그냥 사용하려고 해보니까

show log에서 edit log message

창이뜨는데 수정대충하거나 그냥 OK 눌러보면

요런 에러가 뜬다.


원인이야.. 기존에 사용하던 저장소가 기본설정이라

해당 파일이 없기 때문이고

해당 저장소의 hooks 아래로 들어가서 단순하게 아래 한줄 실행하면 해결되긴 하는데..

수정이 가능하다는건 로그에 대한 신뢰가 떨어진다는 문제니까 고민이 되네..

허용을 해야 하나 말아야 하나....

$ sudo cp pre-revprop-change.tmpl pre-revprop-change


hooks$ cat pre-revprop-change.tmpl

#!/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

# /usr/share/subversion/hook-scripts, and in the 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 [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi


echo "Changing revision properties other than svn:log is prohibited" >&2

exit 1 


[링크 : http://junho85.pe.kr/48]

'프로그램 사용 > Version Control' 카테고리의 다른 글

git mv  (0) 2018.08.13
우분투에서 GIT 사용방법  (2) 2018.04.24
svn externals commit 제외하기  (0) 2017.12.10
svn externals 제약사항 (파일은 안됨)  (0) 2017.11.03
tortoiseSVN 엑셀 비교  (0) 2017.09.16
Posted by 구차니