깃헙 미션
그룹별로 자유롭게 공부하고 흔적 남기기
추천 주제
- Learn GitHub 미션
- 깃헙 워크 플로우
- 문제해결을 위한 중급 / 고급 깃헙 명령어의 동작방식
Git Flow VS Github Flow

Git Flow

Github Flow
1. Git Flow
복잡한 배포 환경 및 긴 개발 주기를 고려한 모델
- 특징: 긴 개발 주기(1개월 이상)와 명확한 릴리스 주기를 가진 팀에게 적합합니다. 여러 기능을 병합 및 테스트하고, QA와 핫픽스를 관리할 수 있습니다.
- 브랜치 구조:
main
, develop
, feature
, release
, hotfix
총 5개 브랜치를 사용합니다.
- main: 최종 배포 가능한 코드만 포함되며, 안정성과 완성도가 보장됩니다.
- develop: 개발이 완료된 기능들이 통합되는 브랜치로, 차기 릴리스 준비 단계입니다.
- feature: 새로운 기능을 개발하기 위한 브랜치입니다.
develop
에서 분기하여 작업하고, 기능이 완료되면 다시 develop
으로 병합됩니다.
- release: 릴리스 준비를 위한 마지막 버그 수정과 QA가 이루어집니다. 완료 후
main
과 develop
에 병합됩니다.
- hotfix: 운영 중인 서비스에서 발견된 긴급 문제를 수정하기 위한 브랜치입니다.
main
에서 분기하여 문제를 해결하고, 완료 후 main
과 develop
에 병합됩니다.
- 릴리스 주기: 명확한 릴리스 사이클을 가진 프로젝트에 유리합니다.
- 사용 환경: 주기적으로 배포되고, 기능 통합 테스트와 QA가 중요한 프로젝트에 적합합니다.
Git Flow의 주요 흐름:
- 기능 개발: 새로운 기능이 필요할 때
feature
브랜치를 생성하여 개발하고, 완료 후 develop
에 병합합니다.
- 통합 테스트:
develop
브랜치에서 통합된 기능들을 테스트하고 안정화 과정을 거칩니다.
- 릴리스 준비: 안정화가 완료되면
release
브랜치에서 최종 테스트와 수정을 수행합니다. 완료된 릴리스는 main
과 develop
에 병합합니다.