posted Feb 7, 2011, 4:49 AM by hyunghwan chung
준비- 플랫폼 - CentOS 4
- 저장소 - /data/svnroot
- svnadmin 및 trigris 사용자와, developer 그룹이 존재한다고 가정
- tigris사용자는 developer 그룹에 속한다고 가정
- /etc/services에 svn이 등록되어 있다고 가정.
필요한 패키지- subversion - 커맨드라인용 클라이언트와 서버포함
- mod-dav-svn - 아파치 서버용 모듈. http나 https 프로토콜을 이용하고자 할 경우 필요.
패키지 설치
- yum install subversion
- yum install mod-dav-svn
저장소 생성- svnadmin create /data/svnroot
SSH서버을 사용하여 접근하기
서버측SSH서버를 사용하는 경우에는 로컬 사용자 계정으로 인증하므로 저장소의 소유자와 권한을 설정해야 함. - 저장소의 소유자와 그룹설정: chwon -R svnadmin:develper /data/svnroot
- 저장소의 권한 설정: chmod -R 0774 /data/svnroot
위의 경우 svnadmin이라는 사용자와 developer그룹에 속하는 모든 사용자는 /data/svnroot 저장소를 읽고 쓸수 있으며, 다른 사용자는 읽을 수만 있음. 익명접근은 불가능함. 클라이언트측- 저장소의 URL: svn+ssh://사용자아이디@서버주소/저장소경로
- ase라는 서브디렉토리를 저장소에 추가: svn import ase svn+ssh://tigris@192.168.123.21/data/svnroot/ase --message "initial import"
- 추가된 ase를 checkout: svn checkout svn+ssh://tigris@192.168.123.21/data/svnroot/ase
svnserve를 사용하여서버측 svnserve를 사용하려면 저장소의 svnserve.conf를 설정해야 함. /data/svnroot/conf/svnserve.conf [general]
anon-access = none
auth-access = write
password-db = passwd
realm = 192.168.123.21
설정후 svnserve를 실행해야 함. svnserve를 데몬으로 실행하거나 xinetd에 등록해서 실행할 수 있음. xinetd에 등록해서 실행하려면 subversion 설정화일이 필요: /etc/xinetd.d/svn service svn {
flags = REUSE
socket_type = stream
wait = no
user = svnadmin
group = developer
server = /usr/bin/svnserve
server_args = -i -r /data/svnroot
disable = no
}
xinetd를 재시작해야 함: service xinetd restart svnserve를 데몬으로 실행하려면 /etc/init.d/svn 을 생성할 것 chkconfig --add svn 345 on service svn start
클라이언트측
|
|