Git 브랜치 전략 정리

zzincode·2025년 2월 28일

Git GitHub

목록 보기
8/17

1. Git Flow

체계적이고 안정적인 브랜치 전략

릴리스 주기가 길고 QA가 중요한 프로젝트에 적합

  • 기능 개발: feature 브랜치에서 진행 후 develop 브랜치에 병합
  • 릴리스 준비: release 브랜치를 생성하여 QA 및 최종 검증 후 main에 병합
  • 긴급 수정: hotfix 브랜치를 만들어 신속 배포 후 develop에도 반영

📌 장점

  • 여러 브랜치를 활용한 체계적인 코드 관리 가능
  • 안정성을 중요하게 고려해야 하는 프로젝트에 적합 (예: 금융 서비스)

📌 단점

  • 브랜치가 많아지면서 복잡도가 증가

2. GitHub Flow

단순한 브랜치 구조

빠른 배포 주기가 필요한 프로젝트에 적합

  • main 브랜치를 중심으로 동작
  • 기능 개발 시 feature 브랜치를 생성하고, 작업 완료 후 코드 리뷰를 거쳐 main에 병합
  • 빠른 배포가 가능한 환경에서 유리

📌 장점

  • 단순한 프로세스로 빠른 개발 및 배포 가능
  • 스타트업과 같이 변경 사항을 빠르게 반영해야 하는 환경에 적합

📌 단점

  • 별도의 release 및 QA 브랜치가 없어 안정성 관리가 어려울 수 있음

3. Trunk-Based Development

빠른 개발 속도를 유지하는 방식

✅ 빠른 개발과 자동화 환경(예 : CI/CD 기반 개발)이 갖춰진 환경에 적합

  • main(trunk) 브랜치 하나만 운용
  • 작업을 main에 직접 커밋하거나 짧은 기간 내 feature 브랜치를 생성 후 병합
  • 자동화된 빌드/테스트 환경이 필수적

📌 장점

  • 브랜치 관리가 단순해 코드 충돌 가능성이 낮음

📌 단점

  • 철저한 자동화 테스트가 없으면 코드 품질 저하 위험

0개의 댓글