티스토리 뷰
1. Git Flow 전략 소개
Git Flow는 기능 개발과 배포 준비 프로세스를 체계적으로 관리할 수 있는 Git 브랜칭 모델입니다. feature, develop, release, hotfix, main 브랜치를 구분하여 안정성과 효율적인 협업을 가능하게 합니다.
기본 브랜치:
- main: 배포된 안정적인 버전만 존재
- develop: 개발을 위한 통합 브랜치. 새로운 기능이 merge 되는 곳
지원 브랜치:
- feature: 새로운 기능을 추가하는 브랜치
- release: 릴리즈 준비 단계에서 사용
- hotfix: 긴급 버그 수정 시 사용하는 브랜치
2. Github 저장소 생성
- Git-Flow 라는 이름으로 저장소를 생성합니다.
- Git 주소를 복사합니다.
3. Git Flow 환경 설정
git clone https://github.com/ZeroBin-dev/Git-Flow.git
- cmd 창을 열고 원하는 경로에 clone을 합니다.
git flow init
- 경로 이동 후, Git Flow 초기화
- 기본적으로 main과 develop 브랜치를 생성합니다.
4. 기능 개발
# Git-Flow
### Git Flow 전략 적용 예제
이 프로젝트는 Git Flow 브랜치 전략을 따라 개발, 릴리즈, 핫픽스를 관리합니다.
## 1. Git Flow 초기화
```bash
git flow init
**PR 제목**: Add user authentication feature
**설명**: 유저 로그인/로그아웃 기능을 추가하였습니다. [JIRA-123](링크)
- README.md 파일을 생성합니다.
- feature1 이라는 이름으로 feature를 생성합니다.
# 작업 후 커밋
git add .
git commit -m "Add new feature"
# 기능 개발 완료 후 feature 브랜치 종료 및 Push
git flow feature finish feature1
git push origin develop
- 작업완료 후, feature 브랜치를 종료하거 Push 합니다.
5. 릴리즈 준비
git flow release start 1.0.0
- 배포 준비가 완료되면 release 브랜치를 생성합니다.
git flow release finish 1.0.0
- i 를 눌러 패치노트를 작성하고 wq로 저장합니다.
- Release 브랜치에서 QA 및 테스트 후, 모든 버그 수정을 마치면 PR을 통해 main에 병합합니다.
6. 핫픽스
git flow hotfix start hotfix1
- 배포 후 긴급 수정 사항이 필요할 때 hotfix 브랜치를 생성하여 작업합니다.
# Git-Flow
### Git Flow 전략 적용 예제
이 프로젝트는 Git Flow 브랜치 전략을 따라 개발, 릴리즈, 핫픽스를 관리합니다.
## 1. Git Flow 초기화
```bash
git flow init
**PR 제목**: Add user authentication feature
**설명**: 유저 로그인/로그아웃 기능을 추가하였습니다. [JIRA-123](링크)
**hotfix1 제목**: 버그 수정
**설명**: 버그를 수정했습니다.
- README.md 파일을 수정합니다.
# 핫픽스 작업 후 커밋
git add .
git commit -m "Fix issue"
# 핫픽스 완료 후 develop에 병합
git flow hotfix finish hotfix1
git push origin develop
- 작업완료 후 hotfix 을 종료하고 push 합니다.
감사합니다.
'도구 및 환경 > Git' 카테고리의 다른 글
[Git] Git 과 SVN 의 차이점 (2) | 2024.12.03 |
---|---|
[Github] 깃허브 메인화면 자기소개서 작성방법 (2) | 2024.08.26 |
[Gitlab] Fork-MergeRequest 전략 (2) | 2024.06.04 |
[Gitlab] Access Token 발급받기 (0) | 2024.05.20 |
[Git] SourceTree 설치 및 사용방법 (0) | 2024.05.16 |
최근에 올라온 글
- Total
- Today
- Yesterday