[Git] git flow, git rebase

Yujin·2023년 2월 23일
0
post-thumbnail

merge의 단점

  • 불필요한 merge commit 생성
  • 복잡한 프로젝트 history

rebase의 장점

  • 같은 feature에서 작업했던 것들을 모을 수 있어 history 보기가 더 쉬워짐

rebase 방법

<새로운 작업을 모두 마치고 push 하기 전>

  1. main branch 이동 후 remote main을 pull 받음
  2. push 할 feature branch로 이동
  3. git rebase -i main

<rebase 진행 중 squash를 할 때>

  1. 가장 오래된 (최상단) commit을 pick 함
  2. 다른 커밋 메세지는 가장 오래된 commit을 기준으로 squash
  3. esc -> :wq

rebase 중 conflict 해결 방법

  1. 해당 코드 수정
  2. git add . (cf. commit은 수정 사항이 없으므로 하지 않는다.)
  3. git rebase --continue
  4. 멈춰 있던 rebase가 진행됨
  5. conflict이 여러번 발생할 경우 그때마다 해결 후 gid add . & git rebase --continue반복
  6. 계속 해결이 안 될 경우 git rebase --abort를 통해 아예 rebase 전 상황으로 돌아갈 수 있다.

0개의 댓글