데브옵스(DevOps)/GIT

GIT - 실무 브랜치 전략

먹보 개발자 2024. 9. 24. 17:01

- 브랜치 전략의 종류

****************

1. Git Flow

2. GitHub Flow

3. GitLab Flow

*****************

4. Feature Branch Workflow

5. Git-Flow Extension

6. Trunk-Based Development

7. Release Flow

 

1. Git Flow

주요 브랜치

    main (제품 출시 버전)

    develop (다음 출시를 위한 통합 브랜치)

보조 브랜치

    feature (새 기능 개발)

    release (출시를 준비하는 브랜치)

    hotfix (긴급한 버그 수정)

    

2. GitHub Flow

주요 브랜치

    main (항상 배포 가능한 상태를 유지)

브랜치 생성

    기능 추가나 버그 수정을 위해 새로운 브랜치를 만들고, 작업이 끝나면 main으로 병합

배포 

    릴리스 관리는 태깅을 통해 수행

 

 

3. GitLab Flow

주요 브랜치

    main (계속해서 배포 가능한 상태를 유지)

브랜치 생성

    새로운 기능이나 버그 수정과 같은 작업은 새로운 브랜치에서 시작하여 개발

    main 브랜치로 병합(Merge)하기 전에 Merge Request를 생성

배포

    코드가 main 브랜치로 병합되면 자동으로 배포 파이프라인이 실행 

 

추가적인 고려

    QA를 어느 브랜치에서 할 것이냐?

    develop

        feature

        feature2

        qa - 01

    병렬적으로 개발을 위한 브랜치 전략은?

    develop (개발존 배포 전략 n개)

        feature

        feature2

        feature3