Branch strategy

1. Main branch (배포용)

프로덕션 환경에 배포할 수 있는 안정된 코드의 최신 버전을 유지
일반적으로 배포가 준비되었을 때 release branch에서 main branch로 merge

2. Release branch (배포용)

프로덕션 배포를 준비하기 위한 branch
테스트 및 QA를 위한 단계를 거친 후, 프로덕션 배포를 위해 main branch로 merge
release branch에서는 주로 버전 관리를 위한 tag를 생성하고, 이전 배포와의 차이점을 정리하는 등의 작업을 수행

3. Stage branch (배포용)

QA 테스트 단계에 배포되는 branch
개발된 기능이나 수정 사항을 테스트하고 검증하기 위해 사용

4. Test branch (배포용)

테스트기에 배포되는 branch
테스트 환경에서 기능 및 시스템 전반적인 테스트를 수행하기 위해 사용

5. Dev branch (배포용)

개발기에 배포되는 브랜치
개발자들이 새로운 기능을 개발하고 테스트하기 위해 사용

6. Test branch (배포용)

issue를 해결하기 위한 branch

7. Test branch (배포용)

개발자 개인의 작업을 위한 branch
branch 명을 personal/”개발자명”으로 함