Study/Git

Git Flow

ujam 2022. 1. 27. 22:11
728x90
반응형

git flow는 git으로 형상관리를 할 경우 브랜치를 효율적으로 관리하기 위해 사용하는 브랜치 전략입니다.

 

 

프로젝트 규모가 커지면 관리하기가 굉장히 용이해지는 장점때문에 git flow를 사용하는 이유입니다.

 

 

git flow는 총 5가지 브랜치로 나누어집니다.
master, develop, feature, release, hotfix 로 이루어져 있습니다. 

 

 


브랜치 마다의 역할은

feature : 기능을 구현을 담당하는 브랜치입니다.
develop : 개발을 진행하는 브랜치입니다.
release : 개발된 애용을 배포하기 위해서 준비하는 브랜치입니다.
hotfix : 배포된 코드에서 발생한 버그를 수정하는 브랜치입니다.
master : 최종적으로 배포되는 브랜치입니다.



 

아래 사진은 git flow를 설명하는 그림입니다.

 

feature
해당 브랜치는 develop 브랜치에서 생성되며, develop 브랜치로 merge됩니다. merge가 된 후에는 해당 브랜치가 삭제됩니다.


develop
feature 브랜치가 merge될 때마다 develop 브랜치에 해당 기능이 더해집니다.
develop 브랜치는 배포할 수준의 기능을 갖추면 release 브랜치로 merge됩니다.


release
release 브랜치에서 테스트를 통해 버그를 검사, 수정하여 배포할 준비가 되었으면 master로 merge하여 배포한다.
release 브랜치는 develop 브랜치에서 생성되며 버그 수정 내용을 develop 브랜치에 반영하고, 최종으로 master 브랜치에 merge합니다.


hotfix
hotfix 브랜치는 master 브랜치에서 생성되며, 수정이 완료되면 develop, release, master 브랜치에 수정사항을 반영시킵니다.


master
develop 브랜치는 개발이 진행되는 중에도 이전 release 브랜치 내용이 master에 존재하여 배포된 상태입니다.

 

 

 



 

 

 

 

 

728x90
반응형