Subversion Repository 생성 절차

Clunix Wiki

연구소 공식 subversion repository 생성시 다음 사항에 유의한다.

  • 연구소의 모든 개발 Subversion Repository는 repo:/home/cvs/repos상에 생성한다.
  • Repository명은 프로젝트를 잘 표시할 수 있는 디렉토리 이름으로 생성한다.
  • 저장소 원격 접근시 호출되는 /usr/bin/svnserve의 owner group은 cvs로 하여 setgid가 설정이 필요. 원격접속시에는 cvs 권한으로 동작하도록 하기 위함
  • subversion 1.6의 버그인 듯 보이는 현상: 최초 Checkin 후 생성되는 db/rep-cache.db 파일에 대해 그룹 write 권한이 주어지지 않아 최초 사용자가 아닌 다른 사용자는 Commit이 불가한 현상이 발생함

test라는 Repository를 생성하는 경우, 아래와 같이 저장소를 생성한다.

# svnadmin create /home/cvs/repos/test

저장소를 초기 생성하면 모든 사용자가 수정이 가능하며, 사용자별로 접근 권한을 수정하여야 한다. 이를 위하여 svnserve 수행시의 설정 파일을 설정한다. 일반적으로 아래와 같은 내용으로 구성된다.

[general]
anon-access = none
auth-access = write
authz-db = authz
realm = Description of this repository

저장소별 접근권한을 설정하고자 하는 경우 authz-db에 설정된 권한 파일을 수정한다. 아래는 전형적인 접근 권한 설정 파일의 예이다.

[groups]
devusers = cezanne, joon626, dbear, rfast76, neako, jwpark, cbyoon
devadmins = cvs

[/trunk]
@devusers = rw

[/branches]
@devusers = rw

[/tags]
@devusers = r

[/]
* = r
@devadmins = rw
부서별 위키