본문 바로가기
728x90
반응형

회사와 프로젝트를 진행하면서 팀원들과 좀 더 전문적이고 체계적인 팀 문화를 만들기 위해 개발자 온보딩 가이드 라는 책을 읽고 적용해보고자 이렇게 정리를 한다. 

깃플 브랜치 전략
깃플 브랜치 전략

 

1. 브랜치 전략

Git Flow는 다음과 같은 주요 브랜치를 사용한다고 한다. 

  • master: 안정적인 릴리스 버전을 유지하는 브랜치로, 배포 가능한 상태만을 관리하게 된다.
  • develop: 다음 릴리스를 준비하는 개발 중인 코드를 관리하게 된다.
  • feature: 새로운 기능 개발을 위한 브랜치로, 개발이 완료되면 develop 브랜치로 병합된다.
  • release: 새로운 버전 출시를 준비하는 브랜치로, 버그 수정과 문서 작업 등 릴리스 전 준비 작업을 포함한다.
  • hotfix: 배포된 버전에서 긴급하게 수정해야 할 버그를 처리하는 브랜치를 말한다.

2. 브랜치 전략을 지키기 위한 상황 및  명령어 예시

1. 기능 개발

새로운 기능 또는 UI를 개발하기 위해 feature 브랜치를 생성하고 작업을 시작합니다.

더보기

브랜치 생성 및 전환:

git checkout develop
git pull origin develop          # 최신 상태로 업데이트
git checkout -b feature/xyz      # 새 기능을 위한 브랜치 생성

작업 후 브랜치 병합:

git add .
git commit -m "Add new feature xyz"
git checkout develop
git merge feature/xyz            # develop에 feature 브랜치를 병합
git push origin develop          # 원격 저장소에 변경사항 푸시

2. 릴리스 준비

develop 브랜치의 코드가 다음 릴리스에 포함될 준비가 되었으면, release 브랜치를 생성합니다.

더보기

릴리스 브랜치 생성:

git checkout develop
git pull origin develop
git checkout -b release/1.0.0    # 릴리스 버전 명명

 

릴리스 최종 수정 및 버그 수정:

git add .
git commit -m "Finalize release 1.0.0"

3. 릴리스 배포

release 브랜치에서 모든 테스트가 통과되고 준비가 완료되면 master로 병합하고 릴리스를 태그로 식별합니다.

더보기

릴리스 브랜치를 master에 병합:

git checkout master
git merge release/1.0.0
git tag -a 1.0.0 -m "Release version 1.0.0"
git push origin master
git push --tags                  # 태그 푸시

develop 브랜치로도 변경사항 병합:

git checkout develop
git merge release/1.0.0
git push origin develop

4. 핫픽스

프로덕션에서 발생한 긴급한 버그를 수정하기 위해 hotfix 브랜치를 사용합니다.

더보기

핫픽스 브랜치 생성 및 수정:

git checkout master
git checkout -b hotfix/1.0.1
# 문제 수정 작업 후
git add .
git commit -m "Fix critical bug in 1.0.0"

핫픽스 병합 및 배포:

git checkout master
git merge hotfix/1.0.1
git tag -a 1.0.1 -m "Hotfix 1.0.1"
git push origin master
git push --tags

git checkout develop
git merge hotfix/1.0.1
git push origin develop
728x90
반응형