CentOS (RHEL 5.0)에 Subversion 1.4.3의 설치 Know-How를 공유한다.
대표적인 형상관리 서버로 CVS/CVSNT, Subversion등이 있다.
Reference Site :
1) http://www.pyrasis.com/main/Subversion-HOWTO
2) http://blog.empas.com/mcchae/19118563
3) http://svnbook.red-bean.com/
우선 순서는
1) Subversion 설치
2) Repository 생성
3) Daemon 설정
4) Client 사용
5) 활용
으로 설명하려 한다.
1. 설치
yum으로 의외로 쉽게 설치된다.
#yum install subversion
기본적으로 이렇게 설치하면 File System으로 관리할 수 있는 기본 패키지가 설치된다.
Subversion으로 repository관리는 두가지로 File System 및 Berkeley DB를 선택 사용할 수 있다.
Berkely DB를 사용하기 위해서는 http://www.oracle.com/technology/software/products/berkeley-db/db/index.html
에서 설치하고 쓸 수 있는데.. 이곳저곳에서 관리 파일 용량이 많아지면 문제가 있다는 report가 있어 안전하고 직관적(실제 물리적 foder/file구조로 관리할 수 있게끔 file system 방식으로만 쓰고자 한다.
2. Repository 생성
1) Repository 생성
우선 Root Repository를 생성해야 한다. (이유: 3.1) 참조)
#mkdir /data1/svn
#cd /data1/svn
#svnadmin create –fs-type fsfs project
이렇게하면 /data1/svn에 project directory 및 기본적으로 하위 디렉토리들이 만들어 진다.
인증/보안을 위한 몇가지 옵션을 설정해 주어야 한다.
2) 기본적인 환경 설정
#vi /data1/svn/project/conf/svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd기본적으로 anonymous access 불가, 인증 성공한 사람만 write권한, 인증방식은 passwd 파일 방식
#vi /data1/svn/project/conf/passwd
[users]
userid1=password1
userid2=password2접속을 허용할 userid 및 password를 기재해주면 된다.
3. Daemon 설정
기 제작한 project repository에 대한 file-system으로의 생성, 인증, password의 본적은 환경 설정은 마쳤고, 이제 subversion daemon을 실행하기 위한 시스템 환경 설정이 남았다.
1) 환경 설정
#vi /etc/rc.d/init.d/subversion 을 열어 17 줄의 SYSCONFIG 내용을 확인한다.
SYSCONFIG=”/etc/sysconfig/subversion”
#vi /etc/sysconfig/subversion
OPTIONS=”–threads –root /data1/svn”
이렇게 하여 svn의 root repository directory를 설정해 준다.
2) 시스템 가동
#/etc/rc.d/init.d/subversion start
이렇게 하면 subversion이 daemon으로 동작하게 된다.
환경 변수를 바꾸고 subversion을 restart해야한다면
#/etc/rc.d/init.d/subversion restart
3) Booting시 자동 실행
#vi /etc/inittab
우선 서버의 실행 Level을 확인해야 하는데 /etc/inittab의 18번째 줄 내용을 확인한다.
id:5:initdefault:
본 id와 initdefault사이의 값인 5값을 확인한다. (X11로 booting한다는 의미)
#cd /etc/rc5.d
#vi S99local
/etc/rc.d/init.d/subversion start &
적당한 줄에 상기 내용을 추가한다.
4. Client 사용
- http://blog.empas.com/mcchae/19118563 에 워낙 잘 설명이 되어 있어서 pass
5. 활용
- 전체적으로 subversion으로 여러 사람의 협업을 통해 소스 형상 관리 및 Binary 관리등을 관리해야 하고, 프로젝트별 권한, Backup 및 Restore, 관리자 통계(오늘 어떤 파일/내용이 수정되었고, 누가 올렸고.. 등등) 여러가지 Tunning작업을 해야한다.
- IT Project에서는 trac을 많이 쓰고 있고, 비슷한 형태로 http://oss.segetech.com/bugzilla-svn-wiki.html을 참고해도 될 것 같다.
참고 :
#01. CentOS 5.0에 subversion/svn 설치
#02. CentOS 5.0에 subversion – viewvc 설치
#03. Subversion 사용 통계/현황 요약 보기
#04. Subversion commit시 메일로 통보 받기
Technorati Tags: subversion, svn, centos, rhel, howto
Powered by ScribeFire.







[...] viewvc 설치 Filed under: IT-PM Skill, Project Management, System Guru — Peter Kim @ CentOS 5.0에 subversion/svn 설치 이후에 tortoisesvn(Windows), svnX (Mac), svn terminal (10.5 Leopard에 [...]
Pingback by CentOS 5.0에 subversion - viewvc 설치 « Peter .WEB2 — December 27, 2007 @ 2:30 pm |
[...] : 1. CentOS 5.0에 subversion/svn 설치2. CentOS 5.0에 subversion – viewvc [...]
Pingback by Subversion 사용 통계/현황 요약 보기 « Peter .WEB2 — February 20, 2008 @ 7:33 pm |
[...] : #01. CentOS 5.0에 subversion/svn 설치#02. CentOS 5.0에 subversion – viewvc 설치#03. Subversion 사용 통계/현황 요약 [...]
Pingback by Subversion commit시 메일로 통보 받기 « Peter .WEB2 — February 21, 2008 @ 2:06 pm |
[...] : #01. CentOS 5.0에 subversion/svn 설치 #02. CentOS 5.0에 subversion – viewvc 설치 #03. Subversion 사용 [...]
Pingback by Subversion commit시 log를 필수 입력하도록 설정하는 방법 « Peter .WEB2 — February 22, 2008 @ 1:52 pm |
[...] : #01. CentOS 5.0에 subversion/svn 설치 #02. CentOS 5.0에 subversion – viewvc 설치 #03. Subversion 사용 [...]
Pingback by Trac을 Windows에서 쉽게 설치하여 사용하기 « Peter .WEB2 — February 22, 2008 @ 1:57 pm |
yum 으로 설치시 /etc/rc.d/init.d/subversion 그외 설정이 일부 없습니다
Comment by kk11111111111 — August 20, 2009 @ 4:21 pm |
/etc/init.d/subversion 파일 내용 공유합니다.
#!/bin/bash
#
# /etc/rc.d/init.d/subversion
#
# Starts the Subversion Daemon
#
# chkconfig: – 2345 90 10
# description: Subversion Daemon
# processname: svnserve
source /etc/rc.d/init.d/functions
[ -x /usr/bin/svnserve ] || exit 1
### Default variables
SYSCONFIG=”/etc/sysconfig/subversion”
### Read configuration
[ -r "$SYSCONFIG" ] && source “$SYSCONFIG”
RETVAL=0
prog=”svnserve”
desc=”Subversion Daemon”
start() {
echo -n $”Starting $desc ($prog): ”
daemon $prog -d $OPTIONS
RETVAL=$?
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
echo
}
stop() {
echo -n $”Shutting down $desc ($prog): ”
killproc $prog
RETVAL=$?
[ $RETVAL -eq 0 ] && success || failure
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
return $RETVAL
}
case “$1″ in
start)
start
;;
stop)
stop
;;
restart)
stop
start
RETVAL=$?
;;
condrestart)
[ -e /var/lock/subsys/$prog ] && restart
RETVAL=$?
;;
*)
echo $”Usage: $0 {start|stop|restart|condrestart}”
RETVAL=1
esac
exit $RETVAL
Comment by Peter Kim — August 22, 2009 @ 12:10 am |