문제 상황
현재 진행 중인 프로젝트에서 원본 레포지토리를 fork를 떠서 개인 레포지토리로 작업을 진행하고 있었다.
`FCM 알림`에 관련된 내용들을 작업하고 PR을 보내고 아직 머지가 되지않았다. 이런 상황에서, 브랜치를 새로 생성해 `댓글` 관련 api를 추가적으로 작업했다.
`댓글` 관련 api만 급히 머지가 되어야 하는 상황인데, 이전 PR이 머지되지 않았기 때문에 `FCM 알림` 내용도 함께 해당 PR에 올라가게 되었다.
해결 방법
upstream 레포지토리(원본 레포지토리)의 default 브랜치에서 새로운 브랜치를 생성하고, 이전 작업 내용들을 cherry-pick 해오기로 했다.
1. 원본 레포지토리의 머지해야할 default 브랜치에서 새로운 브랜치를 생성한다.
`develop` 브랜치에서 `feature/try/commentUpdate` 브랜치를 생성했다.
2. 원본 레포지토리에 새로 추가된 브랜치를 포크한 내 레포지토리에도 가져온다.
git remote add upstream [원격 저장소 주소: https://github.com/~]
// 오리지널 레포를 upstream으로 추가
git remote -v
// 잘 되었는지 확인
git fetch upstream [새로운 브랜치: featrue/commentUpload]
// 새로운 브랜치들을 upstream featrue/commentUpload 이런 식으로 가져옴
git checkout featrue/commentUpload
git push origin featrue/commentUpload
// 내 레포에도 반영
git remote remove upstream
// 원격 저장소 연결 끊기
3. Cherry Picker
인텔리제이에서 작업을 진행했다.
3.1 작업할 브랜치(다른 브랜치의 커밋을 받을 브랜치)로 이동
3.2 Branch All로 변경
3.3 원하는 항목 선택 > 오른쪽 마우스 > Cherry-Pick
3.4 PR 생성
참고 자료
https://maktubi.tistory.com/237
[Github] fork한 레포를 re-fork 하고 싶을 때 (오리지널 레포에 새로 추가된 브랜치 가져오기)
https://github.com/mijinkoo/2022-1-Euron-Study-Assignments GitHub - mijinkoo/2022-1-Euron-Study-Assignments: Euron 2기 스터디팀 예습·복습 과제 제출 Euron 2기 스터디팀 예습·복습 과제 제출. Contribute to mijinkoo/2022-1-Euron-Stud
maktubi.tistory.com
'Git' 카테고리의 다른 글
[Git] Github default branch 변경하기 (master to main) (0) | 2024.04.10 |
---|---|
[Git] 기존 프로젝트를 git repository에 연결하기 (0) | 2024.04.10 |
[Git] Github 한개의 repository에 여러 프로젝트 올리기 (0) | 2024.04.10 |
[Git] 오리지널 레포지토리에 새로 추가된 브랜치들을 포크한 내 레포지토리에도 가져오기 (0) | 2024.04.10 |