커밋 / 브랜치 옮기기

박태영·2024년 6월 18일
0

git

목록 보기
27/44

Cherry Pick

  • 특정 브랜치의 원하는 커밋만 복제해 가져오는 방법
  • git cherry-pick (가져올 커밋의 해시)

실습

커밋 현황

  1. 터미널에 가져올 커밋의 해시와 함께 명령어를 입력한다
  2. main 브랜치에 cherry-pick한 커밋이 옮겨진 것을 확인한다.

rebase --onto

  • 브랜치를 다른 브랜치의 특정 커밋으로 옮기거나, 여러 브랜치의 특정 부분만 리베이스할 때 사용
  • git rebase --onto <newbase> <upstream> [<branch>]
  • <newbase>: 리베이스할 커밋들이 붙을 새 베이스 커밋.
  • <upstream>: 이 커밋을 기준으로 이후의 커밋들이 리베이스 된다 브랜치 이름을 넣으면 해당 브랜치의 head 커밋이 된다.
  • <branch>: 리베이스할 브랜치, 생략하면 현재 브랜치가 리베이스 대상이 된다.

간단히 말하면...

  • git rebase --onto <여기에다가 붙임> <이 커밋 이후 커밋들을> [<여기서 떼어서>]

실습

  • 저장소 현황
  1. git rebase --onto main fruit citrus 입력
    • main : main 에다가 붙임
    • fruit : fruit 이후의 커밋을
    • citrus:citrus 에서 떼어서
  2. 그래프를 봤을때 citrus에서 fruit 이후의 커밋은 Lemon과 lime이므로 해당 커밋이 main에 붙게 된다.
  3. rebase 된 결과를 확인한다.
profile
어른 아이

0개의 댓글

관련 채용 정보