본문 바로가기

위클리 페이퍼

4. git flow 브랜치 전략

Git-flow는Vincent Driessen 의해 널리 퍼지기 시작했고 현재는 Git으로 개발할 때 사용되는 방법론이다.
git-flow에서 사용하는 브랜치는 5가지가 있다.
항상 유지되는 브랜치인
1. main branch
2. develop branch

일정 기간 동안 유지되는
3. feature branch
4. release branch
5. hotfix branch
가 있다.

1. main branch
  - 제품의 안정적인 버전을 나타내며, 프로덕션 환경에 배포될 수 있는 상태여야 한다.
2. develop branch
  - 다음 릴리스를 위한 개발을 진행하는 브랜치. 새로운 기능이나 버그 수정이 개발되고 테스트하는 브랜치이다.
3. feature branch
  - 개별 기능 또는 작업을 위한 브랜치로, Develop 브랜치에서 분기하여 작업한다. 완료되면 Develop 브랜치로 병합한다.
4. release branch
  - 배포를 준비하기 위한 브랜치이다. Develop 브랜치에서 생성하며, 준비가 완료되었다면 Main과 Develop에 병합한다.
5. hotfix branch
  - 긴급한 버그 수정을 위한 브랜치. Master 브랜치에서 분기하여 수정하고, Develop 브랜치와 Master 브랜치로 병합된다.

 

 

장점:
구조화된 브랜치 관리가 용이하고 팀 협업과 릴리스 관리에 유리한다.

 

단점:
규모가 커지면 구조가 복잡해지고 특정한 작업 흐름에 의해 유연성이 부족할 수 있다. 여러 브랜치를 사용해야 하기 때문에 시간 소요가 커질 수 있다.