GitFlow 전략
“브랜치를 여러개 만들어 협업하는 구조”
브랜치 종류
- main
현재코드 (현재 버전)
- develop
복사본 (여기에 신기능 개발, 그래도 직접 push하면 참사일어날 수 있음..)
- feature
신기능 개발해보고 잘되면 merge (ex. feature/messenger) , 완성하면 main브랜치로 합치는게 아니라 불안하기 때문에 release 브랜치로 합친다.
- release
새로운 버전 출시 전 여러가지 테스트 , 완성 된 것 같으면 main 브랜치에 합침
그리고 develop 버전에서도 계속 개발이 진행되어야 하기 때문에 develop 브랜치에도 합침 (계속 다음 버전도 출시해야하기 때문에)
- hotfix
버그가 생겼을 경우 main 브랜치에서 복사해서 hotfix라는 브랜치를 만든 후 버그를 수정한다.

단점 : CI/CD에 취약함
Trunk-based
“브랜치 하나만 잘 관리하자”, “main 브랜치 하나만 운영”
주로 안정화된 프로젝트들이 많이 쓴다.