[Git] Branch 종류 : Git Flow

정재현·2024년 2월 13일

Git & Github

목록 보기
14/16
post-thumbnail

대표적인 브랜치 종류

  • 아직 개발중일 때 : develop 으로 이동하여 feature 를 병합
  • release가 필요할 때 : release 로 이동하여 develop 를 병합
  • 최종 배포시 : main 으로 이동하여 release 를 병합하는 방식으로 진행

main(master)

  • 기본/메인/제품 브랜치
  • 배포용 브랜치
  • 배포 가능한 상태만을 관리

dev(develop)

  • 다음 출시 버전을 개발하는 브랜치
  • 다음 제품 출시를 위해 여러 기능을 병합하는 브랜치

feature/기능요약

  • 각 기능별로 개발을 위한 브랜치
  • 필요할 때마다 develop 브랜치에서 feature 브랜치를 만들어서 기능이 개발완료되면 develop 브랜치로 병합 후 삭제
  • 주로 작은 규모와 빠른 개발을 원할 때 사용
  • 더 이상 필요하지 않은 feature 브랜치는 삭제

release-버젼

  • 이번 출시 직전 최종 테스트를 위한 브랜치
  • develop 브랜치에서 배포할 수 있는 수준의 기능이 모이면 또는 정해진 배포 일정이 되면, release 브랜치를 분기
  • 해당 branch에서 테스트 후 이상없어보이면 main으로 이동 후 release를 병합
    • 버그가 생길 경우 hotfix로 이동하여 main을 병합한 후 버그가 고쳐지면 main으로 이동하여 다시 병합

hotfix

  • 출시 버전에서 발생한 버그를 수정하는 브랜치
  • 배포한 버전에 긴급하게 수정을 해야 할 필요가 있을 경우, master 브랜치에서 분기하는 브랜치
  • develop 브랜치에서 문제가 되는 부분을 수정하여 배포 가능한 버전을 만들기에는 시간도 많이 소요되고 안정성을 보장하기도 어려우므로 바로 배포가 가능한 master 브랜치에서 직접 브랜치를 만들어 필요한 부분만을 수정한 후 다시 ‘master’브랜치에 병합하여 이를 배포해야 하는 것

Branch의 전체 흐름


profile
공부 기록 보관소

0개의 댓글