[Git] git rebase 안될때

chaen-ing·2024년 12월 3일
0

Git

목록 보기
1/2

위와 같은 로그를 플젝하면서 자주 접하게 되었다!!

1. check out "메인 브랜치"
2. git pull
3. check out "작업할 브랜치"
4. git rebase "메인 브랜치"

나는 보통 위 순서대로 원격저장소에서 최신 반영사항을 가져오는데 이 중 4번 rebase 에서 conflict가 발생한 상황이다.

rebase는 브랜치의 커밋을 다른 브랜치 위로 다시 정렬하여 깔끔한 커밋 히스토리를 만드는 데 사용한다.

hint를 보면 git rebase --continue, skip, abort가 있는데 각각 아래와 같은 용도로 사용한다

Continue
Rebase 중 conflict가 발생하면 수동으로 해결한 후, Rebase를 계속 진행(continue로 계속 진행해주면 됨)

Skip
conflict가 발생한 곳을 건너뛰고 rebase를 계속 진행
건너뛴 커밋 내용이 히스토리에서 사라질 수 있음

abort
rebase를 중단하고 시작하기 전 상태로 되돌림
충돌이 너무 많은 경우에 사용할 수 있다

평범하게 conflict가 난 상황이라면 rebase --continue로 해결해주면서 진행하면 됨

그러나 답이 없는 경우..
rebase --abort : rebase 중단
git reset --hard origin/<branch-name> : 원격 브랜치를 강제로 덮어쓰기
위의 방법을 이용해서 강제로 해결?할 수 있다.
그러나 위의 경우 커밋하지 않은 내용, 로컬 커밋 등이 삭제되므로 신중하게 사용해야한다

profile
💻 개발 공부 기록장

0개의 댓글

관련 채용 정보