티스토리 뷰

지난번에는 svn에 trunk, branches, tags 생성하는 방법에 대해서 알아보았다.

 

svn trunk, branches, tags 생성하기 (with svn:E160013)

일단 TESTSVN 이라는 svn repository 를 생성을 하였다. (svn 은 설치가 되었다는 전제) svnadmin create --fs-type fsfs /app/svn/TESTSVN 생성을 마치면 이클립스에서 바로 생성된 svn 주소를 통해 만든 Reposit..

oingdaddy.tistory.com

 

그럼 이녀석들은 무엇을 위해 이렇게 따로 나뉘어 있는가? 다 각자의 역할이 있다. 

 

trunk : 소스의 주 개발 작업을 진행하는 폴더

branches : 소스의 현재 버전을 유지보수하고, 현재 버전을 기반으로 차기 버전을 개발할 경우 사용하는 폴더

tags : 릴리즈된 소스를 관리하기 쉽게 따로 보관하는 폴더

 

사용하는 곳에 따라 다르겠지만 개발, QA, 운영 서버가 있는 곳에 배포를 한다고 하면 

branches는 개발서버에 배포할 소스가 올라가는 장소trunk는 QA서버에 배포할 소스가 올라가는 장소tags는 QA서버에 배포할 소스에 대한 백업 이라고 생각하면 이해하기 쉽다.

 

 

trunk 영역에 형상관리를 할 소스가 올라가 있고 이것을 checkout 받는다. 

 

checkout 받은 프로젝트 우클릭 > team > Branch... 클릭

 

Branch 폴더명을 입력하고 OK

 

svn repo 에 들어가서 새로고침을 한번 해보면 branches 하위에 내가 만든 폴더명인 version1 이라는 폴더 밑에 test-pjt가 들어가 있는것을 확인할 수 있다. 이 프로젝트를 다시 checkout을 받는다. (이름은 다르게)

 

branch 프로젝트에서 작업을 진행하고 commit을 한다. trunk 프로젝트와는 상관없이 별도로 branch 영역에 commit이 되는것을 확인할 수 있다. 하지만 같은 프로젝트처럼 리비전 번호가 이어서 올라가는걸 확인할 수 있다. 

 

branch에서 작업한걸 commit 하고 개발서버에 배포하여 test 해보고 적용대상으로 분류가 된다면 본래 소스인 trunk(master)에 병합을 해줘야 한다. master 프로젝트 우클릭을 하여 team->merge 를 누르면 branch에 있는 소스를 master로 옮길 수 있다.   

 

 

URL에는 branch 프로젝트의 주소를 적어준다. 

 

OK 를 누르면 위와 같이 branch에서 변경된 내역들이 나타나고 이것들 중 선택적으로 merge를 시켜준다. 

 

 

우클릭 하여 Accept 를 하면 master(trunk) 소스에 반영이 되고 이것을 master에서 commit을 해주면 merge는 완료가 된다. 

 

master에 commit 된 소스는 QA에서 검증하고 검증이 완료가 되었다면 운영서버에 배포하기 전에 현재 소스를 Tag로 추출한다. 

 

 

master project 우클릭 > Team > Tag... 

 

 

위와 같이 만든다면 tag가 생성된 모습은 다음과 같다. 

 

위처럼 tags에 01 버전과 02 버전 두개가 생성이 된걸 확인할 수 있다. 

 

이 tags에 생성된 프로젝트로 jenkins에서 빌드를 하는건 다음을 참고하면 된다.

 

 

jenkins에서 svn tag를 이용해 build 하기

svn을 통한 배포 관리 (trunk, branches, tags 활용) 지난번에는 svn에 trunk, branches, tags 생성하는 방법에 대해서 알아보았다. svn trunk, branches, tags 생성하기 (with svn:E160013) 일단 TESTSVN 이라는..

oingdaddy.tistory.com

 

위처럼 svn의 기본 폴더를 각각 역할에 맞게 사용한다면 더욱 편리하게 svn을 사용할 수 있다. 

 

댓글
최근에 올라온 글
최근에 달린 댓글
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31