Subversion을 통해 프로젝트를 진행시 commit 될때마다 관리자 혹은 PM에게 메일을 자동으로 발송할 수 있게 해주는 방법을 공유한다.
기본적으로 Subversion Repository에 있는 hooks 폴더에서 관련 commit 전후에 관련된 script들이 본 내용을 수행하는 방식으로 되어 있다.
설치 방법은
1) commit-email.pl 설치/ 환경 설정
2) post-commit 설치/ 환경 설정
1. commit-email.pl 설치/ 환경 설정
1) http://svn.collab.net/repos/svn/trunk/tools/hook-scripts/ 에서 commit-email.pl.in 을 다운로드
#wget http://svn.collab.net/repos/svn/trunk/tools/hook-scripts/commit-email.pl.in
2) commit-email.pl을 해당 위치에 저장 / 실행권한
#cp commit-email.pl.in /data1/svn/(REPOSITORY Name)/hooks/commit-email.pl
#cd /data1/svn/(REPOSITORY Name)/hooks/
#chmod +x commit-email.pl
3) commit-email.pl에 대한 수정
#vi commit-email.pl
——————————————————————————————————————–
my $svnlook = “/usr/bin/svnlook”; (57line)
my $no_diff_deleted = 1; (63line)
my $no_diff_added = 1; (68line)
$ENV{‘LANG’} = “ko_KR.UTF-8”; (new)
$ENV{‘LC_CTYPE’} = “ko_KR.UTF-8″; (new)
——————————————————————————————————————–
2.post-commit 설치/ 환경 설정
1) post-commit 등록 / 실행 환경 구축
#cd /data1/svn/(REPOSITORY Name)/hooks/
#cp post-commit.tmpl post-commit
#chmod +x post-commit
2) post-commit 수정
#vi post-commit
——————————————————————————————————————–
REPOS=”$1″
REV=”$2″
SUBJECT=”SVN commit notify(REPOSITORY Name) : ”
FROM=”보내는 사람 메일 주소” # from
TO=”받는사람 메일 주소” # to
/data1/svn/(REPOSITORY Name)/hooks/commit-email.pl “$REPOS” “$REV” -s “$SUBJECT” “$TO” –from “$FROM”
——————————————————————————————————————–
3. 시험/ 사용
1) commit 수행 후 본 script가 수행되는지여부에 대해 시험
#./post-commit /data1/svn/(REPOSITORY Name) 10
이렇게 하면 revision 10의 commit시의 log메시지/변경 내용이 메일로 제대로 전달됨을 확인
2) 1)번 과정이 통과되었으면 편하게 subversion client (like. tortoisesvn, terminal) 명령을 통해 commit 수행하면, 등록된 메일로 요약/변경 내용이 전송된다.
참고 :
#01. CentOS 5.0에 subversion/svn 설치
#02. CentOS 5.0에 subversion – viewvc 설치
#03. Subversion 사용 통계/현황 요약 보기
Technorati Tags: subversion, svn, post-commit, commit-email, commit notify
트랙백/핑백
[…] CentOS 5.0에 subversion – viewvc 설치 #03. Subversion 사용 통계/현황 요약 보기 #04. Subversion commit시 메일로 통보 […]
[…] Subversion commit시 메일로 통보 받기 […]