[git] cherry-pick을 사용해서 다른 브랜치로 커밋 옮기기

2022. 7. 20. 01:12
반응형

 

 

feat 브랜치를 만들어서 오늘 하루 작업을 한 뒤

작업 결과물을 main 브랜치에 merge 하는 형태로 작업을 해나가고 있는데,

정신을 놓고 있다가 그냥 main 브랜치에 커밋들을 여러 개 만들어버렸다.

 

사진에 빨간 상자로 표시한 4개 커밋이 지금은 main 브랜치에 쭉 이어져있는데,

이것들을 똑 떼어다가 feat 브랜치로 옮겨본다.

 

git cherry-pick

다른 브랜치에 있는 커밋들을 골라 원하는 브랜치에 적용시킬 때 사용하는 명령어

 

 

1) 새로운 브랜치 만든 후 이동 

git branch -b feat/blah-blah

 

 

2) 새로운 브랜치에다 원하는 커밋을 복사

// 4개를 한 번에 써줄 수 있다
git cherry-pick 13683d8 0769af1 38473e7 bc160b7

 

* 충돌이 발생하면 git cherry-pick --skip 입력한 뒤 컨플릭트 해결 후 git add

* 이 때 원치않는 복사 커밋이 중복하여 생길 수 있다

 

 

3) 지우고 싶은 4개의 커밋이 있는 원래의 main 브랜치로 돌아가서 reset hard

git checkout main
git reset --hard 1098fb0

 

 

반응형

'한 걸음 > Git' 카테고리의 다른 글

git 추적하지 않는 파일 삭제  (0) 2022.07.18
[git] 브랜치 정리  (0) 2022.06.07
[git] 파일명 대/소문자 에러 해결  (0) 2022.01.28

BELATED ARTICLES

more