-
Notifications
You must be signed in to change notification settings - Fork 4
git 전략
J219_홍종우 edited this page Nov 5, 2021
·
14 revisions
- 아래의 2가지 그림 참고(최초 1, 2번 진행 후 3번 부터 반복)
- 전략 그림(1)
-
전략 그림(2)

-
전략 관련 로직 설명
1. origin Repository : main / dev 브랜치 생성
2. 최초 1회 Local로 dev 브랜치 clone 후 directory 이동
- (local) git clone -b dev xxx.git
- cd REPO_NAME
3. 기능별 브랜치 생성(feat/{example})
4. 개인별 작업 브랜치로 이동
- git checkout feat/{example}
- git checkout -b {example}/#? (필요 시 선택 사항)
5. Local 작업 브랜치 코드 수정 및 commit 진행
- ({example/#??) git add && git commit
6. Local 기능 브랜치(feat/{example})에 단순 merge
- (feat/{example}) git merge {example}/#??
7. Local 작업 브랜치를 origin 대상 기능 브랜치에 push
- (feat/{example}) git push origin feat/{example}
- 이 때, Conflict 발생 시, rebase 후 conflict 해소 이후 push
- (feat/{example}) git pull --rebase origin feat/{example} 진행 후 conflict 해소, commit, rebase --continue
8. origin feat/{example} -> origin dev으로 PR
- PR 리뷰 및 Squash and Merge
- Conflict 발생 시 - (Local feat/{example}) git pull --rebase origin dev (conflict 해소 후 다시 Push && PR)
- Conflict 미 발생 시 - (Local feat/{example} -> origin feat/{example}) git push feat/{example} && PR
9. 배포판 구성 시, origin dev -> origin main 으로 PR
- create and merge의 경우 origin main -> origin develop으로 fetch 해주어야 함
10. Local 작업 브랜치 fetch and rebase
- (Local dev branch) git pull --rebase origin dev
11. 신규 기능, 3번 부터 반복
- PR 제목:
[ISSUE_TAG] Title - PR 내용:
### 🔨 작업 내용 설명
### 📑 구현한 내용
뭐했는지 목록화
### 🚧 주의 사항
기능을 구현하면서 만났던 어려웠던 점.
[### 스크린 샷]
[issue | close] #[ISSUE_NUMBER]
- PR 제목:
[Deploy] dev -> main 반영 - PR 내용:
### 📑 배포 대상 기능 목록
- 이슈 제목:
feat/{example} [설명] - 이슈 내용:
### 🔨 기능 설명
기능 설명
### 📑 구현할 내용
목록화
### 🚧 주의 사항
기능을 구현할 때 유의깊게 살펴볼 사항
(### 스크린 샷)
-
Feat
-
Feat Fix
-
Feat Refactor
-
Feat Design
-
Feat Docs
-
Feat Test
-
Feat Chore
-
Feat Deploy
-
Feat FE
-
Feat BE
-
Feat High
-
Feat Middle
-
Feat Low
-
Feat 리뷰 요청
-
Feat 리뷰 완료
EX) Feat: #12 - 로그인 페이지 레이아웃
로그인 버튼 레이아웃 완성
색깔은 메인테마색인 초록색으로 함
[BE] url도 추가함
# <tag>: #<issue> - <subject>
##### Subject 50 characters ################# -> |
# Body Message
# [<field>:<기능이름>]
# - 설명
######## Body 72 characters ####################################### -> |
# --- TAG NAME ---
# Feat : 새로운 기능 추가
# Fix : 버그 수정, 코드 스타일 수정 코드 포맷 변경, 세미 콜론 누락 등
# Refactor: 코드 리펙토링 로직 수정 X
# Design : css, html, 레이아웃 수정
# Docs : 문서 추가 및 수정
# Test : 모든 테스트 작업
# Chore : 잡다한 일들
# Deploy : 배포
# --- FIELD NAME ---
# BE : 서버관련 작업
# FE : 클라이언트관련 작업
# ---- 세부 규칙 ------
# 제목줄은 명령어로 작성한다.
# 제목줄은 마침표로 끝내지 않는다.
# 본문과 제목에는 빈줄을 넣어서 구분한다.
# 본문에는 "어떻게" 보다는 "왜"와 "무엇을" 설명한다.
# 본문에 목록을 나타낼때는 "- "로 시작한다.
# ------------------