본문 바로가기

IT/etc

[SVN] Trunk와 Branches, Tags의 개념

출처 : 프리델트님의 티스토리




Trunk / Branches / Tags

Trunk

 - 기본적으로 개발을 시작할 때 사용하는 디렉토리(소스의 주 개발 작업을 진행하는 폴더) 

 - 모든 프로그램 개발 작업은 Trunk 디렉토리에서부터 시작

 - Main, Mainline, Production의 의미로 사용됨

 Branches

 - Trunk에서 뻗어져 나온 나뭇가지

 - 소스의 실험적인 작업을 하는 폴더. 소스의 현재 버전을 유지보수하고, 현재 버전을 기반으로 차기 버전을 개발할 경우 이 폴더 이용

 - Trunk 디렉토리에서 프로그램을 개발하다보면 큰 프로젝트에서 또 다른 작은 분류로 빼서 개발하는 경우, 프로젝트 안의 프로젝트

 - Release 버전과 유지보수 버전을 분리하고 싶을 때 사용

 - Customizing이나 HotFix 목적으로 분리하여 수정함

 - 수정이 계속해서 이루어지다가 궁극적으로 Trunk에 Merge되는 것이 일반적

 Tags

 - 꼬리표의 개념

 - 현재 릴리즈된 소스를 관리하기 쉽게 따로 '보관'하는데 사용

 - 개발을 위한 것이 아니라 보관을 위한 것이기 때문에 Export만 해야함. 체크아웃하여 커밋을 시도할 경우 경고메시지 출력

 - 프로그램을 개발하면서 정기적으로 릴리즈 할 때 버전별 소스를 따로 저장하는 공간

 - Release, Snapshots, Baselines의 의미로 사용됨