|
|
1번째 줄: |
1번째 줄: |
− | == Subversion Repository 설정 ==
| + | 연구소에서 개발하는 제품/프로젝트 별로 Subversion Repository(저장소)를 생성한다. |
| | | |
− | 연구소에서 진행되는 개별 프로젝트 별로 Subversion Repository(저장소)를 생성하는 과정을 클루닉스 개발 환경에 맞추어 설명한다.
| + | 연구소의 공식 Subversion 저장소는 repo(192.168.12.10)의 |
| + | <tt>/home/cvs/repos</tt> 디렉토리 하위에 프로젝트별 저장소 디렉토리가 존재한다. |
| | | |
− | === Repository 관리 권한 ===
| + | * [[연구소 Subversion Repository 목록]] |
− | Repository를 새로 생성하거나 삭제하는 작업은 관리자 권한을 부여받은 사용자만이 가능하다. 현재 Subversion 저장소는 repo(192.168.12.10)의
| + | |
− | <tt>/home/cvs/repos</tt> 디렉토리 하위에 프로젝트별 저장소 디렉토리가 존재한다. 현재 repo의 root권한을 보유한 사람은 다음과 같으며,
| + | |
− | 저장소 관련 권한이 없는 개발자들은 다음 사람들에게 개별적으로 요청하여야 한다.
| + | |
− | *cezanne, joon626 | + | |
| | | |
− | === Repository 목록 ===
| + | repo시스템의 cvs 사용자(관리자만 접근 가능)만이 새로운 저장소를 생성하거나 삭제할 수 있으며, |
− | [[DevSVNRepoList | 연구소 SVN Repository 목록]]
| + | 일반사용자들은 repo 시스템에 사용자 계정을 생성하여 원격으로 저장소에 접근하여야 한다. |
− | | + | |
− | === Repository 생성 절차 ===
| + | |
− | 연구소의 모든 개발 Subversion Repository는 repo:/home/cvs/repos상에 생성한다.
| + | |
− | | + | |
− | Repository명은 프로젝트를 잘 표시할 수 있는 디렉토리 이름으로 생성한다.
| + | |
− | | + | |
− | <tt>test</tt>라는 Repository를 생성하는 경우, 다음과 같은 절차에 따른다. 이 때 사용자는 cvs로 생성하여 repository의 사용자와 그룹이 모두 cvs로 설정되도록 한다.
| + | |
− | # <tt>svnadmin create /home/cvs/repos/test</tt>
| + | |
− | # <tt>chmod -R g+w test</tt>
| + | |
− | # <tt>svnserve.conf</tt> 설정 수정
| + | |
− | | + | |
− | ssh를 통하여 원격으로 repository를 접근하므로 <tt>/usr/bin/svnserve</tt>의 group은 cvs로 하여 setgid가 설정되어 있어야 하며,
| + | |
− | repository에 대하여 group에 write 권한을 부여하여야 한다.
| + | |
− | | + | |
− | svn 1.6이상에서는 그룹에 write권한을 주지 않아도 무방하지만, <tt>db/rep-cache.db</tt>는 그룹 권한이 주어지지 않는 듯 하다. 직접 해당 파일에 대하여 write권한 부여 필요함
| + | |
− | | + | |
− | subversion에 대한 설정은 <tt>test/conf/svnserve.conf</tt>을 reposotory 설정에 맞게
| + | |
− | 수정하면 된다. 일반적으로 아래와 같은 내용으로 구성된다.
| + | |
− | | + | |
− | [general]
| + | |
− | anon-access = none
| + | |
− | auth-access = write
| + | |
− | authz-db = /home/cvs/repos/authz
| + | |
− | realm = Description of this repository
| + | |
− | | + | |
− | repo의 모든 repository들은 각 사용자에 대한 권한을 <tt>/home/cvs/repos/authz</tt> 파일을 사용하는 것을 권장한다.
| + | |
연구소에서 개발하는 제품/프로젝트 별로 Subversion Repository(저장소)를 생성한다.
repo시스템의 cvs 사용자(관리자만 접근 가능)만이 새로운 저장소를 생성하거나 삭제할 수 있으며,
일반사용자들은 repo 시스템에 사용자 계정을 생성하여 원격으로 저장소에 접근하여야 한다.