본문 바로가기

프로그래밍/이클립스

Ubuntu SVN with Apache설치 & 이클립스 연동

01. Apache2가 설치되어있으므로 subversion, libapache2-svn을 설치 한다.
     아래와 같이 설치가 끝나면  subversion, svn module을 설치하고 나면 80포트를 통해 WebDAV를 사용할수 있다.
$ sudo apt-get install subversion libapache2-svn

2. 설치된 모듈 확인
$ sudo a2enmod dav_svn
This module is already enabled!

03. 새로운 repository를 생성 및 권한 설정
$ sudo mkdir /home/svn
$ sudo chown -R www-data /home/svn
$ cd /home/svn                                                  - 이동
$ sudo svnadmin create --fs-type fsfs testproject1                 - 프로젝트 디렉토리 생성 
$ sudo chmod -R g+w testproject1                                   - 그룹쓰기 권한 설정
$ sudo chown -R www-data.www-data testproejct1                      - 아파치에서 액세스하기 위한 그룹 설정

04. 디폴트로 설치된 설정파일을 변경. (주석처리 된것들 주석을 빼준다.)
$ sudo vi /etc/apache2/apache2.conf
LoadModule dav_module              mod_dav.so
LoadModule dav_svn_module        dav_svn.so
를 추가해준다. (만일 apache2 다시 시작할때 이미 되어 있다면 추가해주지 않아도 된다.)

$ sudo vi /etc/apache2/mods-enabled/dav_svn.conf
<Location /svn/testproject>
  DAV svn
  SVNPath /home/svn/testproject
</Location>

05. apache가 repository에 권한을 갖도록 그룹으로 변경
$ sudo chown -R www-data /home/svn

06. 패스워드 화일을 설정
$ sudo htpasswd -cm /etc/apache2/dav_svn.passwd 사용자아이디
New password: (암호)
Re-type new password: (암호)

07. 패스워드 인증
#htpasswd -c [패스워드파일] [유저아이디]
ex) #htpasswd -c /etc/apache2/dav_svn.passwd techbug

아파치 설정파일이 있는곳에서 위의 명령어를 하면 패스워를 입력받는다.
위의 명령어는 새로운 패스워를 만드는 경우고 사용자를 추가할 경우에는

#htpasswd [패스워드파일] [유저아이디]
의 형식으로 추가한다.. 아파치 설정파일(/etc/apache2/mods-enabled/dav_svn.conf)에 가서 아까 적어준 부분을 아래와 같이 수정
<Location /svn/testproject>
  DAV svn
  SVNPath /home/svn/testproject
  AuthType Basic
  AuthName "Subversion Repository testproject"
  AuthUserFile /etc/apache2/dav_svn.passwd
  Require valid-user
</Location>

그리고 checkout 모든 사용자들이 할 수 있지만 커밋 등의 쓰기동작은 지정된 사용자만이 할수있게 끔 하려면
<Location /svn/sample>
  DAV svn
  SVNPath /home/svn/project1
  AuthType Basic
  AuthName "Subversion Repository project1"
  AuthUserFile /etc/apache2/dav_svn.passwd
  <LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
  </LimitExcept>
</Location>
이렇게 수정.

08. 아파치를 재시작
$ sudo /etc/init.d/apache2 restart

09./svn으로 위에서 설정한 아이디/패스워드 를 입력하면 내용확인
http://localhost/svn/생성한폴더

10.이클립스와 연동
아래 주소의 플러그인을 설치한다(subclipse3개모두)
http://subclipse.tigris.org/update_1.4.x

설치후에 위에서 생성한 svn의 주소(현재는 http://localhost/svn/생성한폴더)로 연결을하면 될것이다.
(외부에서 접속하면 localhost는 ip주소로 바뀌는건 다 아실테고..흠;;)

'프로그래밍 > 이클립스' 카테고리의 다른 글

[java] 알아두면 좋은 eclipse 단축키  (0) 2011.01.07