CollabNet Subversion Server and Client v1.5.5 (for Windows) 를 다운로드 하려면 가입이 필요하다.

설치 화면은 간단한데 svnserve와 apache용 MOD_DAV_SVN을 옵션으로 고를 수 있다.

svn 서버 설정화면으로 포트와 repository를 정해주면 된다.

설치를 완료 하면 자동으로 c:\svn_repository 가 생성된다.
하지만 내용이 하나도 없어서 svn이 접근을 하지 못한다는 에러가 발생한다.

그리고 "Install svnserve to run as Windows service" 일뿐, service가 실행되지는 않는다.
물론 리부팅하면 자동으로 시작이 되긴하겠지만, 설치 직후 안된다면 service가 실행시켜 주면 된다.


authorization failed가 뜨면 아래의 링크를 참조하여 해결하면 된다.

5) Configure permissions for the repository

  • Open with notepad the repository configuration C:\SVNREPOSITORY\conf\svnserve.conf
    and paste just the following lines (remove everything else):
    [general]
    anon-access = none
    auth-access = write
    password-db = passwd.conf
    authz-db = authz.conf
    #realm = My First Repository

    Please note that I renamed "passwd" to "passwd.conf" and "authz" to "authz.conf" both
    in the config file here, and in the filesystem too, so I can just associate the conf extension with notepad and make my life easier.

    Note also that when a realm is not specified, it will be assumed to be the repository guid (created when you created repository). Realms should be unique among different repositories, unless you want to share the same permissions among them.
  • Rename authz to authz.conf
  • Rename passwd to passwd.conf
  • Open passwd.conf with notepad and put some users/passwords by pasting the following lines (remove everything else):
    [users]
    admin = qwerty147
    ricardo = pwd123
    marcelo = pwd456
    joao = pwd789
  • Now open authz.conf with notepad and paste just the following lines (remove everything else):
    # guests will have read permission in all repository
    # writers must include all non-admin users who must have write
    #    permission on some folder (read permission on root is needed for that)
    [groups]
    admins = admin, ricardo
    writers = marcelo
    guests = joao
    project1 = marcelo

    [/]
    @admins = rw
    @writers = r
    @guests = r
    * =

    # please note that permissons (ex: admins group) don't propagate from root to subprojects
    [/Project1]
    @project1 = rw
    @admins = rw
    * =
  • Now you can try again mkdir:
    C:\>svn mkdir svn://localhost/Products
    Authentication realm: e9852c7c-f11f-1946-b4a8-49fa8b53a267
    Password for 'Ricardo': ******


    Please note that it will by default assume your username is the same as your windows login. If it is not, just put any password, and it will ask you for your correct username.
  • If everything went ok you will get a message like "Committed revision 1"

    Congratulations! You have made your first change to the repository.

    Now let's create another folder: C:\> svn mkdir svn://localhost/Projects
    The password won't be asked this time, because it's cached for your user (Documents and settings\username\Application Data\Subversion\auth\)

[출처 : http://www.smarter-technologies.com/smarter/Default.aspx?tabid=128&EntryID=12]

svn_repository의 내부 구조 & conf 내용물들

svnserve.conf의 기본 내용. 전부 주석처리다 ㄱ-

passwd는 사용하는 계정에 대한 아이디/암호를 저장한다.

이녀석은.. 아무튼 인증파일이다. 특정 리파지터리에 특정 유저의 권한을 설정한다.



심심해서 해본 뻘짓

[다운로드 : http://www.collab.net/downloads/subversion/] <- 가입필요
[다운로드 : http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91]

'프로그램 사용 > Version Control' 카테고리의 다른 글

CVS / SVN 차이점?  (2) 2009.03.06
SVN 사용기  (0) 2009.03.05
TortoiseSVN 사용하기  (2) 2009.02.26
TortoiseSVN - Svnserve Based Server  (5) 2009.02.26
cvs 서버 설치 / 복원  (2) 2009.01.22
Posted by 구차니