Git Cherry Pick에 대해 알아보자🙌

2021. 8. 10. 16:04Git 정리

Git Cherry Pick 내가 원하는 커밋 가져오기

  • 아래와 같이 storybook이라는 브랜치를 생성 후 A, B, C 각각의 작업에서 스토리북에 기록시켜두고 싶은 커밋만 쏙쏙 골라서 반영할 방법이다.
  • 2021-08-10-2-27-02.png

Cherry Pick

다른 브랜치의 일부 커밋만 반영하고 싶을 때 사용하는 깃 명령어

히스토리를 갖고 있는 해당 줄기(브랜치)를 전부 다 가져오고 싶은 게 아니라 특정 커밋만 골라내서 가져올 수 있는 깃 명령어, Cherry Pick을 사용하면된다.

소스트리에서 사용하는 법

  • 예를 들어 A라는 프로젝트의 수많은 곁가지 feature/ 브랜치들 중 특정 컴포넌트 버그를 수정한 컴포넌트만 가져오고 싶을 때
    1. 반영되어야하는 브랜치로 체크아웃한 후(스토리북)
    2. 반영하고 싶은 브랜치의 커밋에 위의 사진과 같이 오른쪽 마우스를 눌러 체리 픽 을 클릭합니다.
  • 2021-08-10-2-31-40.png

깃 명령어에서 사용하는 방법 ( 주관적인 견해는 SourcTree 이용하면 편해요! )

$ git branch 
    master
    feature/owen/어쩌구저쩌구
  • 위와 같이 두 개의 브랜치가 있다고 가정하고 master의 특정 커밋을 feature/owen/어쩌구저쩌구에 적용하고 싶을 땐
  • $ git checkout master
  • $ git log --pretty=oneline b14b975 fixed: typo ...
  • Git log를 이용해 가져오고 싶은 커밋의 ID를 확인한 뒤(b14b975)
    1. 반영하고 싶은 브랜치 feature/owen/어쩌구저쩌구로 체크아웃
    2. b14b975 id를 체리픽
  • $ git checkout feature/owen/어쩌구저쩌구
  • $ git cherry-pick b14b975
  • $ git log --pretty=oneline 23fa1e76 fixed: typo ...

참고 사이트

사이트 바로가기

'Git 정리' 카테고리의 다른 글

Git rebase에 대해 알아보자 🥸  (0) 2021.08.10
Git Commands 정리🧐  (0) 2021.08.10
Git Flow에 대해 알아보자🤔  (0) 2021.08.10