svn(subversion) 설치
1. SVN 설치
[root@rvm01 ~]# yum -y install subversion
2. SVN 사용자 추가
[root@rvm01 SVN]# adduser svnadmin
[root@rvm01 SVN]# passwd svnadmin
svnadmin 사용자의 비밀 번호 변경 중새 암호:잘못된 암호: 사전에 있는 단어를 기반으로 합니다 새 암호 재입력:passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.
3. 저장소(Repository) 만들기
[root@rvm01 ~]# mkdir -p /DATA/SVN
[root@rvm01 SVN]# svnadmin create --fs-type fsfs /DATA/SVN/repos
4. repos 디렉토리 사용자/그룹 위임 설정
[root@rvm01 SVN]# chown -R svnadmin.svnadmin /DATA/SVN/repos
[root@rvm01 SVN]# ls -alF /DATA/SVN/repos
합계 32
drwxr-xr-x 6 svnadmin svnadmin 4096 2015-01-20 13:33 ./
drwxr-xr-x 3 root root 4096 2015-01-20 13:33 ../
-rw-r--r-- 1 svnadmin svnadmin 229 2015-01-20 13:33 README.txt
drwxr-xr-x 2 svnadmin svnadmin 4096 2015-01-20 13:33 conf/
drwxr-sr-x 6 svnadmin svnadmin 4096 2015-01-20 13:33 db/
-r--r--r-- 1 svnadmin svnadmin 2 2015-01-20 13:33 format
drwxr-xr-x 2 svnadmin svnadmin 4096 2015-01-20 13:33 hooks/
drwxr-xr-x 2 svnadmin svnadmin 4096 2015-01-20 13:33 locks/
5. SVN 설정 파일 추가/수정
[root@rvm01 conf]# pwd
/DATA/SVN/repos/conf
기본 설정
[root@rvm01 conf]# vi svnserve.conf
[root@rvm01 conf]# grep -v ^# svnserve.conf
[general]
anon-access = read
auth-access = write
password-db = passwd
[sasl]
사용자/비밀번호 설정
[root@rvm01 conf]# vi passwd
[root@rvm01 conf]# grep -v ^# passwd
[users]
svnadmin = 12#$svnadmin
scbyun = scbyun
6. SVN 시작
[root@rvm01 conf]# svnserve -d -r /DATA/SVN/
[root@rvm01 conf]# ps aux | grep svnserve | grep -v grep
root 11355 0.0 0.0 157000 780 ? Ss 13:40 0:00 svnserve -d -r /DATA/SVN/
7. SVN 기본 디렉토리 만들기
홈 디렉토리의 .bash_profile 수정
[root@rvm01 ~]# tail -n 2 .bash_profile
SVN_EDITOR=/usr/bin/vim
export SVN_EDITOR
trunk, branches, tags 생성
[root@rvm01 repos]# svn mkdir svn://192.168.0.101/repos/trunk
로그 메시지가 변경되지 않았거나 지정되지 않았습니다취소(A), 계속(C), 수정(E):
C
인증 영역(realm): <svn://192.168.0.101:3690> 6ffdc915-79f8-40d7-a39d-cf166c9c8a38'svnadmin'의 암호:
-----------------------------------------------------------------------
ATTENTION! Your password for authentication realm:
<svn://192.168.0.101:3690> 6ffdc915-79f8-40d7-a39d-cf166c9c8a38
can only be stored to disk unencrypted! You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible. See the documentation for details.
You can avoid future appearances of this warning by setting the value
of the 'store-plaintext-passwords' option to either 'yes' or 'no' in
'/root/.subversion/servers'.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes
Please type 'yes' or 'no': 예
커밋된 리비전 1.
[root@rvm01 repos]# svn mkdir svn://192.168.0.101/repos/branches
로그 메시지가 변경되지 않았거나 지정되지 않았습니다취소(A), 계속(C), 수정(E):
C
커밋된 리비전 2.
[root@rvm01 repos]# svn mkdir svn://192.168.0.101/repos/tags
로그 메시지가 변경되지 않았거나 지정되지 않았습니다취소(A), 계속(C), 수정(E):
C
커밋된 리비전 3.
커밋된 리스트 확인
[root@rvm01 repos]# svn list svn://192.168.0.101/repos
branches/
tags/
trunk/
서버 체크아웃된 리스트 확인
[root@rvm01 repos]# svn checkout svn://192.168.0.101/repos
A repos/trunk
A repos/trunk/hello.c.txt
A repos/branches
A repos/tags
체크아웃된 리비전 4.
[리눅스 클라이언트]
[root@rvm02 repos]$ svn checkout svn://192.168.0.101/repos
A repos/trunk
A repos/trunk/hello.c.txt
A repos/branches
A repos/tags
체크아웃된 리비전 4.
[scbyun@rvm02 repos]$ svn info
경로: .
URL: svn://192.168.0.101/repos
저장소 루트: svn://192.168.0.101/repos
저장소 UUID: 6ffdc915-79f8-40d7-a39d-cf166c9c8a38
리비전: 4
노드 종류: 디렉토리
스케쥴: 일반
마지막 수정 작업자: svnadmin
마지막 수정 리비전: 4
마지막 수정 일자: 2015-01-20 14:12:41 +0900 (2015-01-20, 화)
[scbyun@rvm02 repos]$ svn log
------------------------------------------------------------------------
r4 | svnadmin | 2015-01-20 14:12:41 +0900 (2015-01-20, 화) | 1 개의 행
hello 파일 추가
------------------------------------------------------------------------
r3 | svnadmin | 2015-01-20 13:53:35 +0900 (2015-01-20, 화) | 1 개의 행
------------------------------------------------------------------------
r2 | svnadmin | 2015-01-20 13:53:18 +0900 (2015-01-20, 화) | 1 개의 행
------------------------------------------------------------------------
r1 | svnadmin | 2015-01-20 13:52:34 +0900 (2015-01-20, 화) | 1 개의 행
------------------------------------------------------------------------
[scbyun@rvm02 ~]$ svn add repos/trunk/expect2.txt
A repos/trunk/expect2.txt
[scbyun@rvm02 ~]$ svn commit repos/trunk/expect2.txt
로그 메시지가 변경되지 않았거나 지정되지 않았습니다
취소(A), 계속(C), 수정(E):
C
추가 repos/trunk/expect2.txt
파일 데이터 전송중 .
커밋된 리비전 6.
[scbyun@rvm02 ~]$
참고URL
- http://www.yongbok.net/blog/%EB%A6%AC%EB%88%85%EC%8A%A4-svnsubversion-%EC%84%A4%EC%B9%98/
- http://lambert.egloos.com/2974388/
- http://blog.daum.net/rayolla/251
- http://www.joinc.co.kr/modules/moniwiki/wiki.php/Site/SVN/Tutorial
- http://pyrasis.com/main/Subversion-HOWTO
'리눅스' 카테고리의 다른 글
CentOS 4에서 iRedMail 설치 (2) | 2015.01.26 |
---|---|
[리눅스] 아파치 웹서버 MPM(prefork, worker) 설정 방법 (0) | 2015.01.21 |
fmt 명령어 (0) | 2015.01.15 |
오라클 클라이언트를 설치하는 방법 (0) | 2014.12.18 |
[리눅스] UMASK 변경 쉘 (0) | 2014.11.24 |