티스토리 뷰

반응형

✅ Git 사용 시 브랜치 전략(Git Flow, GitHub Flow 등)에 대해 설명하라

Git 브랜치 전략은 협업 효율성코드 품질에 직결됩니다.
전략 없이 개발하면, 머지 충돌은 기본이고 배포 시점에 난리가 나는 건 시간문제죠.

이번 글에서는 대표적인 브랜치 전략
실무에서 적용한 경험, 그리고 문제 해결 사례까지 정리해볼게요.


📌 1. 브랜치 전략이 필요한 이유

  • 여러 개발자가 동시에 작업해도 코드 안정성 유지
  • 기능 개발과 배포를 병행 가능
  • 긴급 수정(Hotfix)을 신속히 처리
  • 코드 리뷰 및 테스트 프로세스 표준화

📌 2. 대표적인 브랜치 전략

✅ 1) Git Flow

main
└─ develop
   ├─ feature/*
   ├─ release/*
   └─ hotfix/*
  • main: 배포된 안정 버전
  • develop: 개발 통합 브랜치
  • feature/: 기능 단위 개발
  • release/: 배포 전 테스트 브랜치
  • hotfix/: 긴급 버그 수정

📌 장점: 안정적인 릴리스 관리
❌ 단점: 브랜치가 많아 초기 진입장벽 높음


✅ 2) GitHub Flow

반응형
main
└─ feature/*
  • main: 항상 배포 가능한 상태 유지
  • feature/: 기능 개발 후 PR(Merge Request)

📌 장점: 단순하고 빠른 개발
❌ 단점: 대규모 프로젝트에는 QA 과정 부족


✅ 3) GitLab Flow

  • Git Flow + GitHub Flow 혼합
  • 환경별 브랜치(prod, staging) 운영
  • CI/CD와 연계에 유리

📌 3. 실무 적용 사례

상황

  • NestJS + React 프로젝트
  • 팀원 6명, 2주 단위 스프린트
  • 배포 환경: staging / production

전략

  1. main: production 반영
  2. develop: staging 반영
  3. feature/: 기능별 브랜치 (ex. feature/login)
  4. Pull Request 시 코드 리뷰 필수
  5. Hotfix 발생 시 main에서 브랜치 분기 → main + develop 동시 병합

📉 결과:

  • 배포 중 충돌 건수 70% 감소
  • QA 환경과 운영 환경 분리가 명확해져 버그 회피율 증가

📌 4. 브랜치 네이밍 컨벤션

  • feature/기능명
  • bugfix/버그설명
  • hotfix/이슈번호
  • release/버전

📌 5. 면접에서 이렇게 말하세요

팀 규모나 배포 주기에 따라 브랜치 전략을 달리 적용합니다.
소규모/빠른 배포는 GitHub Flow, 안정성이 중요한 프로젝트는 Git Flow를 사용했고,
실무에서는 staging과 production을 분리한 GitLab Flow 형태를 적용했습니다.
이를 통해 배포 충돌을 최소화하고 QA 효율성을 높였습니다.



Git,브랜치전략,GitFlow,GitHubFlow,GitLabFlow,코드리뷰,협업,배포전략,형상관리,면접질문


 

※ 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/04   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
글 보관함
반응형