Git-flow 전략 


Git-flow 전략은 소프트웨어의 소스코드를 관리하고 출시하기 위한 브랜치 관리 전략이다.

꽤 오래 전에 제시된 전략으로, 이를 개선한 Github-flow, Gitlab-flow 전략도 있다. 

 

여튼 Git-flow 전략에는 총 5가지의 브랜치(Branch)가 존재한다.

  • master : 제품으로 출시될 수 있는 브랜치 ( 최종 릴리즈 버전 )
                   master 브랜치에 병합( merge )한다는 것은 새 버전을 배포한다는 의미이다.
                   master 브랜치에서 커밋이 발생할 때, git hook 스크립트를 걸어서 자동으로 빌드 후 운영 서버로 배포하는 형식을 취한다.
  • develop : 다음 출시 버전을 개발하는 브랜치 
                     다음에 배포하기 위해 개발하는 코드는 origin/master에서 관리한다. 프로젝트를 진행하는 개발자들이 함께 보며 업무를 진행하는 브랜치이다.
                     develop 브랜치의 코드가 안정화되고 배포할 준비가 되면 master로 병합( merge )하고 태그( Tag )를 단다.
  • feature : 기능 단위를 개발하기 위한 브랜치 ( develop 브랜치에서 생성되어 나온 브랜치다. )
  • release : 이번 출시 버전을 개발하는 브랜치 
  • hotfix : 출시 버전( master )에서 발생한 버그를 수정하는 브랜치 

 

아래는 Git-flow 전략 키워드로 검색했을 때 가장 많이 참조되는 그림이다.

 

 

 

참고자료


[1] https://gist.github.com/ihoneymon/a28138ee5309c73e94f9

[2] https://woowabros.github.io/experience/2017/10/30/baemin-mobile-git-branch-strategy.html

 

 

'VCS' 카테고리의 다른 글

[SourceTree] 소스트리 Gitlab 연동하기  (0) 2022.01.29
[VCS/Git] git 기본 명령어 정리  (0) 2019.09.28