작업의 편의성을 위해서 sudo passwd root 로 root passwd 설정하고 su - 로 root로 접속
apt-get install subversion
apt-get install libapache2-svn

mkdir /opt/svn
svnadmin create --fs-type fsfs /opt/svn/test

vi /etc/apache2/mods-enabled/dav_svn.conf 들어가서
<Location /test>
    DAV svn
    SVNPath /opt/svn/test
</Location>
추가

/etc/init.d/apache2 restart 해주면
(혹시 "NO apache MPM..." 에러나면 apt-get install apache2 해주고,
 ServerName 관련 에러나면 vi /etc/apache2/apache2.conf 열어서 제일 아래에 ServerName localhost 라고 추가해줌)

아파치가 정상적으로 재실행되었다면
http://ip-address/test 해주면
Revision 0:/ 라고 보임

# svn checkout svn+ssh://ip-address/opt/svn/test 라고 해도 되어야 함


위와 같이하면, Anonymous 로도 접속이 가능하므로, 특정 ID로만 접속이 가능하도록 변경해보면
apache passwd 파일을 생성하기 위해서
# cd /etc/apache2/mods-enabled
# htpasswd -c dav_svn.passwd ID 해서 패스워드 설정해주고
# vi /etc/apache2/mods-enabled/dav_svn.conf 해서
<Location /test>
    DAV svn
    SVNPath /opt/svn/test
    AuthType Basic
    AuthName "원하는 설명"
    AuthUserFile /etc/apache2/mods-enabled/dav_svn.passwd
    Require valid-user
</Location>

만약에 checkout은 Anonymous로 가능하고 커밋만 특정 ID에게 가능하도록 하고싶다면
    <LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
    </LimitExcept>
로 해주면 됨

이렇게하면, 아파치로 접속시 id/passwd 물어보고 정상적으로 checkout까지는 되지만 import가 안되고
svn+ssh:// 로 접속하면 root passwd를 물어 봄

/opt/svn/test 에 대한 chgrp chmod chown 설정이 필요

아파치를 설치하였을 경우, 기본적으로 아래와 같이 해야한다는데 svn+ssh:// 로만 쓸듯해서 안해도 될듯
chown www-data:www-data /opt/svn/test

그냥, 아래만 해주고 svn+ssh:// 로 써도 될듯
addgroup svn
adduser userID svn (또는 /etc/group 파일에서 직접 , 로 구분해서 수정해도 됨)
chgrp -R svn /opt/svn/test
chmod -R g+w /opt/svn/test

이제 사용 가능

기본 사용 방법은
branches, tags, trunk 폴더 생성한 후, trunk에 import하고 commit 해주고
이후 수정해서 commit & commit... 그러다가 tags에 copy해서 보관

    

'LINUX > ubuntu' 카테고리의 다른 글

adduser, useradd  (0) 2011.01.20
ubuntu server 10.10으로 간단한 토렌트 다운로드 머신 만들기  (0) 2011.01.13
우분투 vsftpd.conf 설정값  (0) 2011.01.12
우분투에서 samba 설정  (0) 2008.11.13
by sminchoi 2010. 4. 13. 20:48
| 1 |