Git

04. 실무에서의 브랜치 전략 - 패스트캠퍼스 백엔드 부트캠프 3기

gkss2tpt 2024. 12. 16. 21:55

1. 브랜치 전략의 종류

  • Git Flow
  • GitHub Flow
  • GitLab Flow
  • Feature Branch Workflow
  • Git-Flow Extension
  • Trunk-Based Development
  • Release Flow

2. Git Fow

  • 주요 브랜치
    • main (제품 출시 버전)
    • develop (다음 출시를 위한 통합 브랜치)
  • 보조 브랜치
    • feature (새 기능 개발)
    • release (출시를 준비하는 브랜치)
    • hotfix (긴급한 버그 수정)

3. GitHub Flow

  • 주요 브랜치
    • main (항상 배포 가능한 상태를 유지)
  • 브랜치 생성
    • 기능 추가나 버그 수정을 위해 새로운 브랜치를 만들고, 작업이 끝나면 main로 병합
  • 배포
    • 릴리스 관리는 태깅을 통해 수행

4. Gitlab Flow

  • 주요 브랜치
    • main (계속해서 배포 가능한 상태를 유지)
  • 브랜치 생성
    • 새로운 기능이나 버그 수정과 같은 작업은 새로운 브랜치에서 시작하여 개발
    • main 브랜치로 병합(Merge)하기 전에 Merge Request를 생성
  • 배포
    • 코드가 main 브랜치로 병합되면 자동으로 배포 파이프라인이 실행

5. 추가적인 고려

  • QA를 어느 브랜치에서 할 것인가?
  • 병렬적으로 개발을 위한 브랜치 전략은?