-
항시 유지되는 메인 브랜치
- main, dev
개인브랜치→ dev → main(최종)
-
merge 되면 사라지는 보조 브랜치
- 이름/기능명, release, hotfix
- 보조 브랜치는 새로 변경될 개발 코드를 분리하고 각각 보존하는 역할
- 기능을 다 완성할 때까지 유지하고, 다 완성되면 develop 브랜치로 merge하고 결과가 좋지 못한 기능의 경우 버리는 방향으로 취한다.
- 보조 브랜치는 보통 개발자 저장소에만 있는 브랜치이고, origin에는 push하지 않는다.
-
main(master) : 출시, 배포 되는 브랜치→ 배포 가능한 상태만 관리
-
develop : 배포 버전을 대비하여 개발하는 브랜치 → 배포할 것을 개발
-
feature : 각 기능 개발을 위한 브랜치, develop에서 source 따옴
-
release : 다음 버전 배포를 준비하는 브랜치
- develop 브랜치를 release 브랜치로 옮긴 후 QA, 테스트를 진행하고 main으로 합침
- 배포를 위한 최종적인 버그 수정 등의 개발을 수행하는 브랜치
- 배포 가능한 상태가 되면 main 브랜치로 병합, 배포된 main 브랜치에 버전 태그(ex, v1.0)를 추가한다.
- 배포 완료 후 develop 브랜치에도 merge 작업 수행
-
hotfix : main 브랜치에서 발생한 버그를 수정하는 브랜치
- 배포한 버전에서 긴급하게 수정할 필요가 있을 때 main 브랜치에서 분리하는 브랜치