git

Git-Flow전략

키위먹고싶다 2022. 5. 11. 23:22

Git-Flow에서 사용하는 브랜치를 알아보자.

 

1.feature ^ 서브브랜치

feature브랜치는 기능의 구현을 담당한다. 브랜치명은 feature/{구현기능명} 과 같은 명칭을 준수하는 것이 일방적이다. feature 브랜치는 develop브랜치에서 생성되며, develop브랜치로 머지 된다. 머지된 후에 해당 브랜치가 삭제된다. 

 

2. develop * 메인브랜치

develop브랜치는 말 그대로 개발을 진행하는 브랜치로 진행하는 개발에 중심적이다. 하나의 feature브랜치가 머지될 때마다 develop브랜치에 해당 기능이 더해지며 살을 붙여간다. 

 

3. release ^

release브랜치는 개발된 내용을 배포하기 위해 준비하는 브랜치이다. 브랜치명은 release-1과 같은 방식으로 첫번째 릴리즈, 두번째 릴리즈 등을 지정하는 것이 보편적이다. release 브랜치는 develop브랜치에서 생성되며 버그 수정 내용을 develop브랜치에도 반영하고, 최종적으로 master브랜치에 머지한다. 

 

4. hotfix ^

hotfix 브랜치는 배포된 소스에서 버그가 발생하면 생성되는 브랜치이다. 브랜치명은 hotfix-1으로 지정된다. release브랜치를 거쳐 한차례 버그검사를 했지만 배포 후에 발견된 버그들을 수정한다. 

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

 

5. master *

master 브랜치는 최종적으로 배포되는 가장 중심의 브랜치이다. develop브랜치에서 개발이 진행되는 와중에도 이전 release브랜치의 내용이 master에 있어 배포되어 있다.