정리

VCS의 branch, tag, trunk

저장소/잡다한거

여태 본 것 중에 가장 알아듣게 설명됨. 왕 친절! 

프로젝트 단위로 구성하는게 맘 편한듯... 왕 후회중 ㅠㅠ



원문 출처 : http://freedert.tistory.com/100


Subversion/SVN 설정시 branches, tags, trunk 에 대한 개념


Subversion/SVN 설정시 branches, tags, trunk 에 대한 개념

trunk
- 기본적으로 개발을 시작할 때 사용하는 디렉토리(소스의 주 개발 작업을 진행하는 폴더)
- 모든 프로그램 개발 작업은 trunk 디렉토리에서 부터 시작
- main, mainline, production의 의미로 사용됨

brankches
- trunk 에서 뻗어져 나온 나뭇가지(소스의 실험적인 작업을 진행하는 폴더, 소스의 현재 버전을 유지보수 하고, 현재 버전을 기반으로 차기 버전을 개발할 경우 이 폴더 이용)
- trunk 디렉토리에서 프로그램을 개발하다보면 큰 프로젝트에서 또 다른 작은 분류로 빼서 개발하는 경우.
- 프로젝트 안의 작은 프로젝트
- release 버전과 유지보수 버전을 분리하고 싶을 때 사용
- customizing이나 hot fix 목적으로 분리하여 수정함
- 수정이 계속해서 발생하다가 궁극적으로는 trunk에 merge 되는 것이 일반적임

tags
- 꼬리표의 개념.
- 현재 릴리즈된 소스를 관리하기 쉽게 따로 보관하는데 사용. 즉, 개발을 위한 것이 아니라 보관을 위한 것이기 때문에 export만 해야 한다. 체크아웃하여 커밋 할 경우 경고 메시지가 출력된다.
- 프로그램을 개발하면서 정기적으로 릴리즈 할 때 0.1, 0.2, 1.0 식의 버전의 소스를 따로 저장하는 공간
- 한번 만들면 수정하지 않음
- releases, snapshots, baselines의 의미로 사용됨