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