협업으로 작업 시 로컬에서 브랜치를 관리하는 방법입니다!
- `feat` : 새로운 기능 추가
- `fix` : 버그 수정
- `docs` : 문서 관련 (gitignore, README, 각종 템플릿 등)
- `style` : 스타일 변경 (포매팅 수정, 들여쓰기 추가, …)
- `refactor` : 코드 리팩토링
- `test` : 테스트 관련 코드
- `build` : 최초 프로젝트 설정, 빌드 관련 파일 수정(build gradle 의존성 추가, yml 파일 생성 등)
- `chore` : 패키지 구조 변경, 삭제, 기타 작업들
# 1. feature -> develop (단, stash 혹은 commit으로 작업 내용 남아있지 않은 상태로 스위칭)
$(feature) git switch develop
# 2. 원격 develop -> 로컬 develop 동기화
$(develop) git pull origin develop
# 3. develop -> feature
$(develop) git switch feature
# 4. 병합
$(feature) git rebase develop
# 4-1. 이후 충돌 발생하면 직접 수정한 후 rebase 계속 진행 (끝날 때 까지 여러 번 반복)
$(feature) git add .
$(feature) git commit # 이때는 -m 으로 커밋 메시지 수정하지 말고, 그냥 원래 메시지로 반영
$(feature) git rebase --continue
# 4-2. rebase 중 꼬여서 처음부터 다시 하고 싶으면 아래 명령어 입력 후 4번으로 되돌아가기
$(feature) git rebase --abort
# 5. 병합 완료 후 원격에 강제 push (다른 브랜치에 강제 push 하면 큰일남!!)
$(feature) git push origin feature/\#{이슈번호} -f
🚨 주의사항 - 개발 시 브랜치는 main 브랜치에 push하는 것이 아닌, develop 브랜치에 push 하는 것!
