-
Notifications
You must be signed in to change notification settings - Fork 3
Git Branch 전략 v1.1
차지원 edited this page Jan 18, 2022
·
1 revision
- upstream에서 본인 이니셜을 따 고유 브랜치로 사용한다.
- 고유 브랜치에 변경사항을 업로드 하기 위해서는 필수적으로 Pull Request - merge 과정을 거친다.
- 작업 브랜치는 본인의 고유 브랜치에서 생성한다.
브랜치 이름은 {작업분류}/{이슈넘버}로 생성한다.- 브랜치 이름은 자유롭게 생성한다. ex)feature, week1, 0118, ... ,
- 최초 작업에서는 upstream 저장소를 추가할 필요가 있다.
-
git remote -v
명령을 통해 upstream 저장소가 잘 추가되었는지, origin 저장소는 잘 있는지 확인할 수 있다. -
git status
명령을 통해 사소한 문제를 잡을 수도 있다.
// 최초 1회 작업, upstrem 저장소 추가
git remote add upstream https://github.com/GDSC-PKNU-21-22/To-Do-Android.git
// 브랜치 생성
git checkout CJW // 본인 브랜치에서 시작
git checkout -b feature // 본인 브랜치에서 작업 브랜치 생성
// ...작업 진행...
// 작업 마감
git add .
git commit -m "Issue #1 feat: a"
git push origin feature
// Pull request
- merge 이후에는 새로고침이 필요하다.
- 원격 저장소의 상황을 로컬 저장소에게 알릴 필요가 있다.
- merge된 branch는 삭제를 권장한다. 필수는 아님.
// merge할 때마다 필요한 작업
git branch -d feature // merge된 branch 삭제하기
git checkout CJW // 본인 브랜치에서 시작
git fetch upstream/CJW // remote와 동기화 작업
git rebase upstream CJW // 또는 git pull upstream CJW
git checkout -b feature // 본인 브랜치에서 작업 브랜치 생성
// ...작업 진행...
// 작업 마감
git add .
git commit -m "Issue #1 feat: a"
git push origin feature
// Pull request
- 기존 작업 branch를 feature/#1과 같이 이슈마다 생성하라고 표시했으나 여러 branch에서 작업하는 것이 헷갈릴 수 있다.
- 굳이 나누지 않고 매 주 1개의 branch에서 작업하는 것이 더 나을듯.
- 명령어 예시에 branch 삭제 명령 추가
- 명령어 예시 속 branch 이름 변경