아래 과정으로 연동을 하고 CVS commit을 할때 로그 메세지에 "issue #이슈번호" 형식으로 써주면 해당 이슈에 이슈노트로 CVS 로그메세지가 추가된다.
1. mantis 설치 후 /path_to_matis/config_inc.php 파일에 아래 내용 추가. matis에 cvs라는 계정이 만들어져 있어야 하고 개발자 권한이길 권장한다.
$g_source_control_account = 'cvs';
$g_source_control_notes_view_status = VS_PUBLIC;
$g_source_control_notes_view_status = VS_PUBLIC;
2. CVS에서 CVSROOT 모듈을 체크아웃해서 loginfo 파일에 아래 내용(mantis 체크인 파일 위치) 기록
# cvs co CVSROOT
# vi loginfo
ALL /usr/local/bin/php /usr/local/apache2/htdocs/mantis/core/checkin.php %{sVv}
# cvs commit -m ""
# vi loginfo
ALL /usr/local/bin/php /usr/local/apache2/htdocs/mantis/core/checkin.php %{sVv}
# cvs commit -m ""
3. Mantis checkin.php 수정
4. ViewVC와 연동을 위한 스크립트 추가 (최호진님이 만드신것 수정)
이 파일은 위 Mantis checkin.php 파일에 CVSREPORT_DIR로 선언된 매크로의 경로에 위치해야 한다.
5. 사용법
아래와 같이 CVS 로그에 Mantis의 이슈 번호를 아래 형식으로 넣어주면 Mantis 이슈 노트가 추가된다. 이슈 노트 내용에는 누가 커밋을 했고 변경된 파일의 리스트와 각 파일의 diff 내역을 ViewVC에서 확인할 수 있는 링크가 들어간다.
# cvs commit -m "issue #13"
* 주의: 이 경우에는 mantis와 CVS가 같은 서버에 있는 경우이다. 만약 다른 서버에 있다면 CVS에서 mantis가 있는 서버의 MySQL에 접속 가능해야 하며, CVS 서버에 있는 mantis 설정파일에 DB 정보가 당연히 localhost로 되어있으면 안된다. 실제 mantis 서버의 주소를 적어야 한다.
checkin.php.diff.txt
comments
comments rss (+댓글 쓰러가기)