Skip to content

Git Branch 전략 v1.1

차지원 edited this page Jan 18, 2022 · 1 revision

고유 브랜치

  • upstream에서 본인 이니셜을 따 고유 브랜치로 사용한다.
  • 고유 브랜치에 변경사항을 업로드 하기 위해서는 필수적으로 Pull Request - merge 과정을 거친다.

작업 브랜치

  • 작업 브랜치는 본인의 고유 브랜치에서 생성한다.
  • 브랜치 이름은 {작업분류}/{이슈넘버}로 생성한다.
  • 브랜치 이름은 자유롭게 생성한다. ex)feature, week1, 0118, ... ,

1차 예시

  • 최초 작업에서는 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

2차 예시

  • 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

변경사항

v1.1

  • 기존 작업 branch를 feature/#1과 같이 이슈마다 생성하라고 표시했으나 여러 branch에서 작업하는 것이 헷갈릴 수 있다.
  • 굳이 나누지 않고 매 주 1개의 branch에서 작업하는 것이 더 나을듯.
  • 명령어 예시에 branch 삭제 명령 추가
  • 명령어 예시 속 branch 이름 변경
Clone this wiki locally