ETC/ETC__Git

rebase 해보기

말하는감자 2022. 8. 3. 23:55

Rebase?

1. rebase는 새로운 커밋을 만들지 않는다
2. rebase로 만들어진 커밋 히스토리는 merge로 만들어진 커밋 히스토리보다 좀 더 깔끔하다
3. rebase 와 merge의 결과물은 같다 but 커밋 히스토리를 깔끔하게 만들려고 rebase를 쓴다

 

실습

  1. dev 에서 작업
  2. main이 dev 를 따라가길 원하지만 merge history가 남지 않으면 좋겠다 
noel@MacBook-Pro springboot-jpa-blog % git checkout main
이미 'main'에 있습니다
브랜치가 'origin/main'에 맞게 업데이트된 상태입니다.

noel@MacBook-Pro springboot-jpa-blog % git rebase -i dev
Successfully rebased and updated refs/heads/main.

noel@MacBook-Pro springboot-jpa-blog % git push
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To github.com:noelcool/springboot-blog-demo.git
   fb5f61c..7d86194  main -> main