Git Flow

Taeha Kim·2020년 9월 13일
0

Git과 GitHub

목록 보기
3/4
post-thumbnail

이글은 Git은 뭐고, GitHub는 또 뭔가요?Git, GitHub 조금 더 알아보기를 읽고 보시는걸 추천 합니다.

Git Flow란?

Git Flow는 Git으로 개발 및 버전 관리할때 여러 브랜치를 효율적으로 관리하기 위해 사용하는
브랜치 관리 전략(Branch management strategy)입니다.
(간단히 말하면 '이렇게 사용하면 브랜치 관리 하기 편하더라' 해서 사용하는 브랜치 관리 방법론입니다.)

Git Flow에 사용되는 브랜치

  • master branch : 제품을 배포하는 브랜치 입니다.

  • develop branch : 개발자들이 feature 브랜치에서 개발한 수 많은 단위 기능들이 병합되는 브랜치 입니다.

  • feature branch : 단위 기능을 개발하는 브랜치입니다. 기능 구현이 완료되면 develop 브랜치에 merge 합니다.

  • release branch : 제품 배포를 위해 master 브랜치로 보내기 전에 문제가 있는지 검사하고 각종 버그를 수정하는 브랜치 입니다. 버그를 수정한 후, master 브랜치로 merge 합니다.

  • hotfix branch : release 브랜치에서 master 브랜치로 merge하고 제품 배포를 한후, 문제가 생겼을 떄 긴급 수정을 위해서 사용하는 브랜치 입니다.

그래서 어떻게 하면 되나요?

  • master 브랜치에서 develop 브랜치를 만듭니다.

  • develop에서 feature 브랜치를 만들고, 제품에 필요한 단위 기능들을 개발합니다.
    (예를 들어 회원가입 기능을 구현하기 위해서는 develop 브랜치에서 feature/signup 브랜치를 생성합니다.)

  • feature브랜치에서 단위기능을 구현하고, 유닛테스트를 거친후에 develop 브랜치에 merge 합니다.

  • 모든 feature 브랜치에서 각각의 단위 기능 구현이 완료되어 develop 브랜치에 전부 merge했다면, release 브랜치를 만듭니다.

  • release 브랜치에서 QA(품질검사)를 하면서 문제가 없는지 검사하고, 버그를 수정합니다.

  • master 브랜치와 develop 브랜치에서 release 브랜치를 merge 합니다.

  • master 브랜치에서는 제품을 배포하고, develop 브랜치에서는 다음 버전 출시를 위한 개발을 진행합니다.

  • 제품을 배포한 후, 미처 발견하지 못한 버그 또는 문제점들이 발생하면 hotfix 브랜치를 만들고 hotfix 브랜치에서 긴급 수정한 후 master 브랜치로 보내 수정 배포를 진행 합니다.

  • master 브랜치에서 수정 배포하고 난후 develop 브랜치에서 master 브랜치를 merge하고 다음 버전 출시를 위한 개발을 진행합니다.

profile
함께 성장하는 개발자가 되고 싶습니다.

0개의 댓글