원본 레포지토리 포크 > 포크된 레포지토리 클론 > 브랜치 생성 > 작업 후 PR
git clone [내 GitHub 레포지토리의 URL]
내 GitHub 레포지토리는 클론하면서 origin으로 설정된다.
git remote add upstream [원본 레포지토리의 URL]
alias 설정 확인 :
git remote -v
원본 레포지토리 : upstream
포크된 레포지토리 : origin
git checkout [mybranch]
git checkout -b mybranch-feat
git add .
git commit -m "커밋 메시지"
git push -u origin mybranch-feat
원본 레포지토리와 포크된 레포지토리 동기화 > 새 브랜치 생성 > 코드 작업 후 PR
# 원본 레포지토리를 upstream 등록
git remote add upstream [코드잇 레포지토리 주소]
# 최신 코드를 적용할 로컬 저장소로 이동
git checkout mybranch
# upstream을 로컬 저장소에 pull하여 최신 코드 적용
git pull upstream mybranch
# 로컬 저장소의 최신 코드로 변경된 사항을 origin에 push
git push origin mybranch
# 포크된 레포지토리로 이동
# mybranch 브랜치로 이동
# sync 버튼 클릭
# 내 깃헙의 포크된 레포지토리는 최신화된 상태이다.
# mybranch-feat에 최신 코드를 병합하기
git checkout mybranch-feat
git pull origin mybranch
# 충돌이 발생하면 해결한다.
# 최신코드를 적용하고 충돌을 해결한 최종 결과물을 origin/mybranch-feat에 반영
git push origin mybranch-feat
# 또는 git push -u origin mybranch-feat 통해서 upstream tracking되어있다면
git push
# github 사이트에 접속해서 브랜치에 들어가 PR 요청을 보낸다.
참고
코드잇 스프린트 강의