Search

브랜치 전략 (Git-Flow, Github-Flow)

날짜
2025/03/23
태그
스터디
공부
프로젝트
SSAFY
공개여부

브랜치 전략이란

한 프로젝트에서 동시에 여러명의 개발자가 여러개의 작업을 할 수 있기위해 고안된 방법
여러명의 개발자가 1개의 저장소를 사용하는 환경에서 효과적으로 작업하기 위해나온 개념이다.
프로젝트 규모와 프로젝트를 테스트하고 배포하는 방법에 따라 전략에 장단점이 있다.

Git-Flow

메인과 개발을 나누어 관리하자.
복잡한 릴리즈 관리가 필요한 프로젝트에 적합하다.
대규모 서비스
배포 일정이 명확한 서비스
release 브랜치에서 테스트를 거친 후 마스터 브랜치에 merge시 배포

주요 브랜치 구성

main: 실제 운영(배포) 코드
develop: 개발 통합 브랜치
feature/*: 기능 개발 브랜치
release/*: 릴리즈 준비 브랜치
hotfix/*: 운영 버그 수정 브랜치

Git-Branch

하나의 브랜치만 잘 관리하자
Trunk-based 전략이라고 부르기도 한다.
CI(지속적인 통합) CD(지속적인 배포)에 유리하다.
PR 생성 시 테스코드 실행
main에 merge시 자동 배포

주요 브랜치 구성

main: 항상 배포 가능한 최신 상태
feature/* or topic/*: 기능 개발 브랜치 (임시 브랜치)
출처