실무에서의 브랜치 전략

이의준·2024년 5월 20일
0

Git & GitHub

목록 보기
3/7
post-thumbnail

브랜치 전략의 종류

  1. Git Flow
  2. GitHub Flow
  3. GitLab Flow
  4. Feature Branch Workflow
  5. Git-Flow Extension
  6. Trunk-Based Development
  7. Released Flow

Git Flow

  • 주요 브랜치

    • main (제품 출시 버전)
    • develop (다음 출시를 위한 통합 브랜치)
  • 보조 브랜치

    • feature (새 기능 개발)
    • release (출시를 준비하는 브랜치)
    • hotfix (긴급한 버그 수정)

GitHub Flow

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

Gitlab Flow

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

추가적인 고려

  • QA를 어느 브랜치에서 할 것이냐?
    (* QA란? : "Quality Assurance"의 약자로, 품질 보증을 의미함 소프트웨어의 품질을 보장하기 위해 진행되는 다양한 활동과 절차를 포함)
    • develop
      • featuer1
      • feature2
      • qa-01
  • 병렬적인 개발을 위한 브랜치 전략은?
    • develop (개발존 베포 전략 n개)
      • feature1
      • feature2
      • feature3

0개의 댓글