main branch: 이 branch는 항상 배포 가능한 상태를 유지합니다. 즉, 이 branch에는 언제든지 배포할 수 있는 안정 버전의 코드만이 포함됩니다. 실제로 서비스 중인 서버에 들어가는 코드입니다.
→<팀 정책> branch protect rule에 의해 push는 안됨. pull request 후 code review를 받은 이후에만 merge가 가능한 상태.
dev branch: 이 branch는 다음 버전을 개발하기 위한 최신 개발 코드가 포함됩니다. feature나 hotfix 등의 branch에서 개발이 완료되면 해당 코드가 develop branch에 merge됩니다.
→ <팀 정책> branch protect rule에 의해 push는 안됨. pull request 후 code review를 받은 이후에만 merge가 가능한 상태.
→ 개발에 있어 가장 핵심이 되는 branch이며, 주기적으로 develop branch를 pull 해서 최신으로 업데이트 하세요.
feature branch: 새로운 기능을 추가하기 위해 생성되는 branch입니다. 이 branch는 develop branch에서 분기되며, 개발이 완료되면 develop branch에 merge됩니다.
→ <팀 정책> 각각 맡은 기능에 대한 feature branch를 remote에 push 후 develop에 pull request를 날려야 합니다. pull request에선 reviewer를 한명 이상 선정 해야합니다.
→ <팀 정책> reviewer가 해당 pull request의 code를 확인 한 후, develop branch에 merge 하게 됩니다. reviewer는 comment를 반드시 남겨야 합니다.
→ version 명시에 신경을 씁니다. 예시로 처음 release branch는 0.1.0 ver 이 되며, 첫번째 0은 major 버전. 두번째는 minor 버전. 가장 마지막 0은 bugfix 이후 증가되는 patch 버전 항목입니다.
→ major 버전은 소프트웨어 개발에서의 주요 업그레이드나 변경 사항을 반영하는 버전 번호입니다