[Trac] SVN commit 로그와 ticket 연동 하기
ITWeb/서버관리 2011. 9. 7. 14:15http://trac.edgewall.org/wiki/CommitTicketUpdater
tracopt.ticket.commit_updater.*
= enabled
wget http://ftp.edgewall.com/pub/trac/Trac-0.11.7.tar.gz
0.12.2 에는 trac-post-commit-hook 파일이 없어
0.11.7 압축푼 후 복사해서 사용
로그 연동을 위해서 http auth 를 사용하지 않을 경우 svn 프로토콜로 인증 사용하여
구현
http://yshmnet.homelinux.com/wordpress/?p=311
trac에서는 bug, 개발작업, 등의 내용을 ticket을 작성하여 관리한다. ticket을 작성하는 경우 일반적으로, ticket을
open한다고 한다. 실제로는, svn commit이 발생할때 log를 hooking해서, 해당 log에 ticket 정보가 있는지 확인하고, ticket정보가
있다면, post-commit hook template으로부터 post-commit hook script 생성 svn의 hook은 commit외에 다른 작업에도 사용할 수 있도록 다양한 script들을 제공하지만, commit이 완료된 이후에 적용될
수 있도록 한다. 먼저, 다음과 같이 post-commit hook template를 복사하고, 실행 속성을 준다. /svnroot/project/hooks# cp post-commit.tmpl post-commit
/svnroot/project/hooks# vi post-commit Trac source package로부터 trac-post-commit-hook 생성 trac-post-commit-hook은 Trac source package의 contrib directory에서 제공되므로, 다음과 같이 복사해서 그대로 사용한다. /svnroot/project/hooks# cp /trac-0.11.5/contrib/trac-post-commit-hook .
svn commit시에 trac의 ticket에 그 정보를 전달하여, 2가지 action을 취할 수 있는데, ticket을 close하거나, log정보를 저장하고, ticket의 상태는 변경하지 않는것이다. 다음은 ticket을 close하기 위하여 log message에 포함되어야 하는 내용이다. 여기서는 ticket 5번과 10번인 경우를 예로 든다. close #5, #10 ticket을 close하지 않고, 현재까지 작업한 내용에 대한 commit log message를 추가할 수 있다. refs #5, #10 |