본문 바로가기

카테고리 없음

subversion 설치법

1. 패키지 설치


#sudo apt-get install subversion apache2 libapache2-svn

위의 명령을 이용하여 패키지를 설치한다.


2. subversion 디렉토리 생성 및 권한 설정.

#mkdir /home/svn                                                - 서브버젼에서 사용할 디렉토리

#cd /home/svn                                                    - 이동

#svnadmin create --fs-type fsfs repository                 - 프로젝트 디렉토리 생성 

#chmod -R g+w repository                                       - 그룹쓰기 권한 설정

#chown -R nobody:nogroup repository                      - 아파치에서 액세스하기 위한 그룹 설정

apache2 는 www-data:www-data 임

3. apache 설정

우분투에서 아파치 설정파일은 /etc/apache2/apache2.conf  이다.

위의 파일에서


LoadModule dav_module              mod_dav.so

LoadModule dav_svn_module        dav_svn.so


<Location /repos>

  DAV svn

  SVNPath /home/svn/repository

</Location>


부분을 추가해 줍니다.


4. 사용자 인증

#htpasswd -c [패스워드파일] [유저아이디]

ex) #htpasswd -c passwd cameo


아파치 설정파일이 있는곳에서 위의 명령어를 하면 패스워를 입력받습니다.

위의 명령어는 새로운 패스워를 만드는 경우고 사용자를 추가할 경우에는


#htpasswd [패스워드파일] [유저아이디]

의 형식으로 추가합니다. 아파치 설정파일에 가서 아까 적어준 부분을 아래와 같이 수정하여줍니다


<Location /repos>

  DAV svn

  SVNPath /home/svn/repository

  AuthType Basic

  AuthName "Subversion Repository cameo"

  AuthUserFile /etc/apache2/passwd

  Require valid-user

</Location>


그리고 checkout 모든 사용자들이 할 수 있지만 커밋 등의 쓰기동작은 지정된 사용자만이 할수있게 끔 하려면

<Location /repos>

  DAV svn

  SVNPath /home/svn/repository

  AuthType Basic

  AuthName "Subversion Repository cameo"

  AuthUserFile /etc/apache2/passwd

  <LimitExcept GET PROPFIND OPTIONS REPORT>

    Require valid-user

  </LimitExcept>

</Location>


이렇게 수정합니다.

설치가 제대로 되었는지 확인하려면

- 서버 재시작: sudo /etc/init.d/apache2 restart)

- #http://localhost/repos


or


-svn checkout http://(서버 ip or 도메인네임)/svn/repository repository

을 실행하였을 경우

Checked out revision 0 이 출력 되면 설치가 완료된 것입니다.

참고 URL : http://svn.collab.net/repos/svn/trunk/doc/user/cvs-crossover-guide.html