[SVN] ask the administrator to create a pre-revprop-change hook 오류 해결

[SVN] ask the administrator to create a pre-revprop-change hook 오류 해결

이클립스에서 SVN Comment 수정하는 방법은 다음과 같다.

(1) 프로젝트 폴더 위에서 마우스 우클릭 – [Team] – [Show History] 로 히스토리 탭을 연다.
(2) 히스토리 탭에서 Comment가 비어있는 Revision 라인을 선택하고 마우스 우클릭 – [Set Commit Properties] 를 선택한다.
(3) 원하는 Comment를 입력하고 [OK] 버튼을 클릭한다.

이 때 아래와 같은 에러가 발생하는 경우가 있다.

Disabled repository feature
svn: Repository has not been enabled to accept revision propchanges;
ask the administrator to create a pre-revprop-change hook

작성자가 로그 메시지를 수정할 수 없게 되어 있다는 메시지이다. 해결방법은 다음과 같다.

(1) svn 폴더로 이동한다.

cd [리파지토리 경로]

ex) cd /home/svn/project_name

ls 해보면 아래와 같은 파일들이 있다.

conf  dav  db  format  hooks  locks  README.txt

(2) hooks 폴더 안으로 이동

cd hooks

ls 해보면 아래와 같은 파일들이 있다.

post-commit.tmpl  post-revprop-change.tmpl  pre-commit.tmpl  pre-revprop-change.tmpl  start-commit.tmpl
post-lock.tmpl    post-unlock.tmpl          pre-lock.tmpl    pre-unlock.tmpl

(3) pre-revprop-change.tmpl 을 복사하여 pre-revprop-change 파일을 만든다.

cp pre-revprop-change.tmpl pre-revprop-change

(4) vi 로 파일을 열어서 수정한다. (윈도우라면 메모장으로 파일을 수정)

if [ “$ACTION” = “M” -a “$PROPNAME” = “svn:log” ]; then exit 0; fi 라인 아래에,

if [ “$ACTION” = “M” -a “$PROPNAME” = “svn:author” ]; then exit 0; fi 내용을 추가한다.

만약 위와 같이 파일을 수정하지 않거나 잘못 수정했을 경우 exit code 1 오류가 발생한다.

(5) 실행 권한을 부여한다. (윈도우라면 bat 확장자를 붙여서 파일명 수정)

chmod +x pre-revprop-change

만약 위와 같이 실행 권한을 부여하지 않으면, exit code 255 오류가 발생한다.

A repository hook failed
svn: Revprop change blocked by pre-revprop-change hook (exit code 255) with no output.

참고사이트 1) https://junho85.pe.kr/48