본문 바로가기

- others

[Git] Git branching model

반응형

기능 추가나 이슈 해결 시 branch를 생성하여 작업하게 될 텐데
주로 Feature branch와 Hotfix branch를 이용했습니다.

기능 추가 시 Feature branch를
이슈 해결 시 Hotfix branch를 사용했는데

이런 브랜치들이 종류별로 어떤 상황에 사용되는지 갑자기 의문점이 생겨 찾아봤습니다!

A successful Git branching model이라는 운용모델을 찾을 수 있었습니다.

nvie.com/posts/a-successful-git-branching-model/

 

A successful Git branching model

In this post I present a Git branching strategy for developing and releasing software as I’ve used it in many of my projects, and which has turned out to be very successful.

nvie.com

 

브랜치를 4가지로 나누어 관리합니다.

1. Main branch
    1-1. master가 여기에 해당됩니다.
        배포 가능한 상태만 관리합니다.
    1-2. develop는 통합 브랜치이며 이 브랜치를 기반으로 개발을 진행 후
        Release branch에서 최종 수정하여 master로 배포됩니다.

 


2. Feature branch
    제일 처음에 언급한 바와 같이 새로운 기능 개발에 사용되며
    버그 수정에도 이 브랜치에서 관리합니다.

 


3. Release branch
    개발이 완료된 브랜치에서 배포 전 최종적으로 버그를 수정하고,
    모든 기능이 정상적으로 동작하는지 확인 후 master로 배포됩니다.


4. Hotfix branch
    배포한 버전에서 이슈가 발생하여 긴급하게 수정 시 master에서 따오는 브랜치입니다.
    v1.0 -> 1.0.1 -> 1.0.2와 같이 메인 버전이 아닌 경우가 주로 해당 브랜치로 작업합니다.

 

 

반응형