Window 2008 Server, SVN 설치
OS : Windows Server 2008 32bit
[설치 시 이력]
* 최조 'Setup-Subversion-1.8.5.msi'를 설치하였으나, eclipse에서 접속시
"svn: E210004: Number is larger than maximum" 오류 발생,
'Setup-Subversion-1.6.6.msi' 으로 재설치하여 성공.
* Httpd 서버가 실행되지 않아도 SVN은 동작함
SVN Download(Subversion 1.6.6) :
[설치]
1. SVN setup파일로 설치
2. D:\svn_repo 폴더 생성, cmd 실행, 생성폴더로 이동
3. D:\svn_repo>svnadmin create --fs-type fsfs svn
<설명>
--fs-type ARG : 저장소 타입: 'fsfs' (기본값) 또는 'bdb'
svn 폴더 생성(Repository 생성)
4. D:\svn_repo>svn checkout file:///d:/svn_repo/svn
<정상 출력>
체크아웃된 리비전 0.
<설명>
여기까지가 SVN repository 설정 완료
5. svn/conf/svnserve.conf 파일 편집
[general]
### The anon-access and auth-access options control access to the
### repository for unauthenticated (a.k.a. anonymous) users and
### authenticated users, respectively.
### Valid values are "write", "read", and "none".
### Setting the value to "none" prohibits both reading and writing;
### "read" allows read-only access, and "write" allows complete
### read/write access to the repository.
### The sample settings below are the defaults and specify that anonymous
### users have read-only access to the repository, while authenticated
### users have read and write access to the repository.
anon-access = read
auth-access = write
### The password-db option controls the location of the password
### database file. Unless you specify a path starting with a /,
### the file's location is relative to the directory containing
### this configuration file.
### If SASL is enabled (see below), this file will NOT be used.
### Uncomment the line below to use the default password file.
password-db = passwd
### The authz-db option controls the location of the authorization
### rules for path-based access control. Unless you specify a path
### starting with a /, the file's location is relative to the
### directory containing this file. The specified path may be a
### repository relative URL (^/) or an absolute file:// URL to a text
### file in a Subversion repository. If you don't specify an authz-db,
### no path-based access control is done.
### Uncomment the line below to use the default authorization file.
# authz-db = authz
### The groups-db option controls the location of the groups file.
### Unless you specify a path starting with a /, the file's location is
### relative to the directory containing this file. The specified path
### may be a repository relative URL (^/) or an absolute file:// URL to a
### text file in a Subversion repository.
# groups-db = groups
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm, they should
### have the same password database, and vice versa. The default realm
### is repository's uuid.
realm = SVN Test Repository
<설명>
### 주석 해제시 앞의 공백이 존재하지 않게 해야함
anon-access = read
### 인증 필수 여부 설정 - read : 미인증사용자 읽기가능, none : 미인증시읽기 및 쓰기 불가
auth-access = write
### 인증사용자의 쓰기권한 설정
password-db = passwd
### id/pw 가 등록되어 있는 파일명
realm = SVN Test Repository
### 저장소 인증 시 나오는 타이틀 설정
6. passwd 파일 편집
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harryssecret
# sally = sallyssecret
admin = passwd!@#$
<설명>
아이디 = 패스워드
형식으로 사용자 계정 추가
7. cmd 창에서 서버 실행, cmd창을 닫게 되면 서버 중지됨
svnserve -d -r D:\svn_repo
<설명>
-d 데몬으로 실행, -r 은 svn 경로를 지정하는 옵션
8. 윈도우 서비스에 등록(기본 포트:3690), 등록이후 서비스에서 실행(자동 확인)
sc create svn_2 binpath= "C:\Program Files\Subversion\bin\svnserve.exe --service -r D:\svn_repo" displayname= "Subversion Server_2" depend= Tcpip start= auto
서비스에서 제거(제거가 안될경우, 재부팅후 다시 한번)
sc delete svn_2 displayname= "Subversion Server_2"
99. Eclipse 에서 SVN Repositories탭(Window - show view - other - SVN - SVN Repositories)
우클릭 - New - Repository Location 선택, 정보 입력
[Subversion의 구성요소]
svn : 커맨드라인 클라이언트 프로그램
svnversion : 작업복사의 상태를 관리를 하는 프로그램
svnlook : Subversion의 저장소를 조사하기 위한 툴
svnadmin : Subversion의 저장소를 조정하거나 복원하기 위한 프로그램으로 시스템 관리자에 의해 사용됨
svndumpfilter : Subversion 저장소의 덤프 파일 형식의 데이터에 대한 필터 프로그램
mod_dav_svn : Apache HTTP 서버용의 플러그 인 모듈로 저장소를 네트워크상 다른 사용자가 사용할 수 있도록 함
svnserve : demon으로 또는 SSH로부터 기동되는 독립 서버 프로그램으로 네트워크에 있는 저장소를
사용할 수 있도록 하는 다른 방법
간단 eclipse에서의 svn 사용법
1. 로컬의 프로젝트를 서버에 등록
프로젝트 선택 - 우클릭, Team 선택 - Share Project 선택 - SVN 선택 - 마침(commit 과정이 있을 경우 commit)
2. Commit
Commit할 파일 또는 폴더 선택 - Team - Commit
3. eclipse 하단 Show view에서 'SVN Repositories'탭 에서 해당 Repository 확인 가능
<설명>
- 저장소는 복수 개 생성 가능
- 사용할 수 있는 파일이나 디렉터리는 import 로 저장소에 등록
- checkout을 실행하면 저장소 내용이 작업공간에 복사됨과 동시에 관리 정보를 수록하는 .svn 디렉터리가 생성되며,
이 작업은 최초 1회만 필요하다.
- 파일이나 디렉터리를 수정하면 commit 로 변경분이 저장소에 등록되며, 저장소에 있는 다른 변경 분을 작업
디렉터리에 반영하고 싶을 때는 update를 수행한다.
- 관리 정보 없이 저장소 내용을 가져오고 싶을 때는 export 를 수행한다.
|