우분투 서버 버젼에서 SVN 서버를 사용하게 되면 콘솔에서 프로젝트를 만들고, 삭제하고 하는게 불편하고,,어렵다..
그래서 웹으로 할수 있는 방법이 없나 하고 알아보다가 우연히 USVN 이라는걸 알게 됐다..
구동 방식은 예전처럼 subversion 을 설치 해놓고,, 웹사이트를 하나 추가 하는것 뿐이다.
소스는 http://www.usvn.info/download 에서 받을 수 있다.
usvn 을 돌리기 위해설 꼭 필요한것이 몇가지 있다.
apache , php,mysql ,subversion
Step1 위에 언급한 패키지 설치 하기
# apt-get install apache2 php5 libapache2-mod-php5 mysql-server php5-mysql subversion libapache2-svn
Step2 아파치 모듈 활성화하기
#a2enmod rewrite
#a2enmod dav_fs
#a2enmod authz_svn
Step3 아파치 재시작
#sudo service apache2 restart
Step4 Usvn 다운 로드 하고 압축풀기
#sudo tar -zxf usvn-1.0.7.tar.gz(현재는 1.0.7이 최신버젼이다.)
#mv usvn-1.0.7 svn (폴더명을 원하는 이름으로 변경한다.)
Step4 폴더의 소유자와 권한을 설정한다.
#mkdir “원하는경로”/usvn/files (files폴더를 꼭 만들어줘야한다.)
#chown -R www-data:www-data “원하는경로”/usvn
#chown -R 755 “원하는경로”/usvn
Step4 아파치 설정을 변경한다.
가상호스트를 사용할 경우 아래와 같이 설정한다.
<VirtualHost *:80>
ServerAdmin email@email.com
ServerName usvn.domain
<Location /svn>
DAV svn
Require valid-user
SVNParentPath”원하는경로”/usvn/files/svn
SVNListParentPath off
AuthType Basic
AuthName “USVN”
AuthUserFile “원하는경로”/usvn/files/htpasswd
AuthzSVNAccessFile “원하는경로”/usvn/files/authz
</Location>
DocumentRoot “원하는경로”/usvn/public/
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory “원하는경로”/usvn/public>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>
Step5 아파치 재시작
#sudo service apache2 restart
Step6 usvn 웹사이트 시작 후 세팅하기..
http:://usvn.domain/install.php