TIL#12 git rebase

tgrf07·2021년 4월 27일
0
post-thumbnail

git merge 사용시 merge 할 때 마다 merge commit message가 자동으로 생성된다.

이렇게 되면 불필요한 commit message가 많아 지므로 보기 불편하고 지저분하다.

이런 방식을 main branch에 merge를 하지않고 rebase를 한다.

rebase를 하게되면 많아진 커밋 메세지를 한커밋 메세지로 합치고 이름을 지정한다.

merge 된 PR들도 commit한 브랜치 끼리 모아준다.

주의할점 conflict가 발생할 수 있으니 최커3(최대 커밋 3개) 잊지말자.
20개의 Commit이 전부 conflict 발생하면 모니터를 부술지도 모르니까....

rebase 방법
1.main branch 이동 후 main에 pull 받는다.

2.내가 push 할 작업branch 이동 후 git rebase -i main

3.가장 처음에 했던 commit을 pick해서 남겨두고 나머지 commit 들을 sqush(대충 하나로 합침) 한다 pick이라고 적혀있는 부분을 s 또는 sqush로 바꿔줌

4.저장 후 나가면 또 rebase된 commit message 를 작성하는 창이 열린다.

  1. 기존에 작성되어있던 commit message들 을 전부 지우고 새로운 commit message를 작성하고 저장종료

6.git log로 sqush된 commit 확인하고 Push 한다.

7.rebase 할 때 history가 바뀌기 때문에 git에서 에러를 띄운다.
이 때 내가 rebase 한게 확실하다면 git push "branch이름" -f Force push 진행한다.

0개의 댓글