상세 컨텐츠

본문 제목

전자정부프레임웍 정리 마지막_우분투에서 SVN 소스 버전 관리

클라우드+마이크로서비스

by 김일국 2016. 4. 15. 17:17

본문

이번 포스트는 전자정부프레임웍 정리의 마지막으로서 우분투에서 SVN 소스 버전 관리를 다루겠습니다.

지난 5개월간 eGovFrame 으로 작업하고, 약 보름간, 기반기술에 대한 정리의 시간을 갖게 되었고, 이제 마지막 시간이 되었습니다.


지난 포스트에서 노트북(무선랜:192.168.56.1)에 오라클 버추얼박스(무선랜:192.168.0.199) 기반의 우분투14.04.04를 설치하고, SSH, FTP, Mysql서버, 톰캣서버를 설치하고,

작업PC(유선랜:192.168.0.3)에서 수정한 eGovFrame 3.5 개발버전을 이클립스에서 메이븐빌드(install) 해서 생성한 war패키징 파일을 톰캣 Manageer 프로그램으로 배포하는 것 까지 작업을 했었습니다. 혼자 작업하면, 여기까지 하셔도 무방하고, 여러 사람과 협업을 한다면, 이번 포스트를 이용하시면 됩니다. 일반적으론 아파치(http:로 SVN에 접근하기 위해), 메이븐, 허드슨(웹으로 배포하기), SVN 등을 설치 하는데,

저는 간단히 SVN만 설치해서 (svn:// 접근을 사용하기 때문에 아파치 연동이 필요 없음, 톰캣 매니저를 사용하기 때문에 허드슨 필요없음) 공동 작업을 합니다.

이번에는 마지막으로, 이클립스(작업PC)에서 소스를 버추얼박스(노트북)의 FTP 저장소(kim19사용자)에 레파지토리(repository)를 만들어서 소스버전을 공유하는 SVN을 우분투(노트북)에 설치하고, 이클립스에서 연동하는 작업을 하게 됩니다. 우선 결과부터 보시죠...

이클립스(작업PC)에서 레파지토리(노트북우분투)에 접속해서 소스 싱크 맞추기 이전과 이후(빨간색 테투리)로 리비전(파일명 옆에 번호)로 몇번 수정(commit)이 발생되었는지 확인 가능하십니다.

이제 Subversion (svn) 설치 과정을 들어 갑니다.

1. 우분투 SSH 터미널로 로그인 합니다. 기본이 홈 폴더입니다.(/home/kim19/)

- $ mkdir svn ( svn 폴더임을 명시적으로 보여주기 위해서 폴더를 생성 합니다. )

2. 서브버전 설치

- $ sudo apt-get install subversion

3. 서브버전 설치 확인

- $ ps -ef | grep svnserve

4. 서브버전 레파지토리 생성

- $ svnadmin create --fs-type fsfs /home/kim19/svn/repo1 ( 나중에 다른 프로젝트 할때는 repo2 로 생성해 주면 됩니다.)

5. 생성한 레파지토리 사용자 추가 ( /home/kim19/svn/repo1/conf/ ): nano에디터를 사용합니다.

- $ sudo nano svnserve.conf ( 주석 3군제 제거: anon-access = read, auth-access = write, password-db = passwd )

- $ sudo nano passwd ( 사용자 추가 : 문서 제일 하단에 kim19 = 6075 ) 이클립스에서 커넥션 생성할때 사용할 아이디와 암호 입니다.

6. 서브버전(Subversion) 실행

- $ sudo svnserve -d -r /home/kim19/svn/ (서브버전이 사용할 최상위 폴더를 지정하면서 실행합니다.)

7. 실행 검증

- $ svn list svn://192.168.0.199/repo1 (레파지토리가 제대로 생성되었는지 확인 하는 명령, 잘못되는 Unable to connection 문구가 나옵니다. 정상일 경우는 화면에 아무 반응 없이 넘어 감니다.)

8. 이클립스 에서 싱크

- 왼쪽 프로젝트 마우스 왼쪽버튼 -> Team -> Share Project -> SVN

-> repository location 란에 svn://192.168.0.199/repo1 (7번 작업의 실행검증 위치와 같습니다.)

-> 결과적으론 저는 common(프로젝트명) 에서 작업을 하기 때문에 svn://192.168.0.199/repo1:common 으로 경로가 자동으로 붙습니다.

약간 헷갈리지만, 이해는 됩니다.

참고 명령들,

- $ killall svnserve ( 혹시 수정을 하시려면, 서버를 재부팅 하지 말고, svn서버만 kill 한후 다시 실행시킬때 필요합니다.)

- $ rm -rf /home/kim19/svn ( svn 설정을 모두 지우고 초기화 할때 기존 폴더를 삭제 합니다.)

- FTP로 kim19계정으로 접속해 보면, 폴더 구조를 알수 있고, 오른쪽 원격 폴더중에 db 폴더에 커밋되는 파일과 폴더가 위치하게 됩니다.(아래)



이로써, 지난 6개월간의 프로젝트의 기본을 정리하며 후기를 남겨 보았습니다. 끝.

관련글 더보기

댓글 영역