main
프로덕트로 출시되는 메인 브랜치로, 두개의 메이져 브랜치 중 하나이다.
versioning을 진행하고 시스템 요구사항, 로그를 담아 출시한다.
develop
다음 release를 대비해 개발하는 브랜치로, 두개의 메이져 브랜치 중 하나이다.
기능개발을 진행하는 feature 브랜치와 QA, 테스트를 진행하는 release 브랜치의 주축이다.
hotfix-?
main에서 뻗어나오는 브랜치로, 프로덕트 수준에서 발견된 버그를 수정한다.
작업이 끝나면 main에 merge되어 versioning을 수행하고, develop에 merge 되어 개발을 이어나간다.
feature-?
develop 브랜치에서 뻗어나오는 브랜치로, 여러 기능을 동시구현할 때 유용하게 사용된다.
기능개발이 끝나면 develop으로 PR(Pull Request)을 올려 merge된다.
일반적으로 feature-개발하는 기능명 으로 많이 작명된다.
작업이 끝나면 develop에 merge되어 개발을 이어나간다.
release-?
develop 브랜치에서 뻗어나오는 브랜치로, release 이전에 QA와 테스트, bug fix를 진행한다.
release하기 위한 수준까지 개발이 완료되었다 판단되면 release 브랜치에서 출시를 준비한다.
main 브랜치로 출시를 위해 merge 되고, develop 브랜치로 merge되어 다음 출시를 위해 개발을 이어나간다.