git rebase 기준 브랜치 / 대상 브랜치

2025. 6. 20. 00:00Git

반응형

 

기준 브랜치 : new base branch, 새로운 base가 될 브랜치

대상 브랜치 : branch, 명시하지 않으면 현재 브랜치

 

 

git merge <branch>

 

기준 브랜치 : 현재 브랜치

대상 브랜치 : branch, 병합 대상이 될 브랜치

 

> git rebase든 merge든 아래 깔리는 브랜치가 기준 브랜치라고 한다.

 

 

[이슈 상황]

 

위 내용은 feature 브랜치에서 devleop으로 rebase 하는 경우에 나타나는 conflict 이다.

[feature branch] <-- current branch

git rebase devleop

 

[이슈 원인]

여기서 기준 브랜치는 develop, 대상 브랜치는 feature이기 때문에 저쪽에서 삭제했다는 것은 feature 브랜치에서 삭제가 되었다는 내용이다.

여기서 git add . 을 해버리면 devleop을 기준으로 수정을 판단하기 때문에 git status를 보면 해당 내용이 사라진다.

이는 최신 내용이 반영된 대상 브랜치의 내용(쌓아올릴 내용)을 기준으로 해결이 된 것이 아니라 기준 브랜치에 지워져야할 내용(베이스가 될 내용)이 지워지지 않고 남아있다는 것으로 이해해야한다.

 

[해결 방법]

따라서 대상 브랜치에서 삭제된 내용을 올바르게 적용하는 방법은 git add가 아닌 git rm으로 파일을 지워주는게 맞다.

 

반응형

'Git' 카테고리의 다른 글

SubModule 추가  (1) 2022.07.30
fetch 이해하기  (0) 2022.01.26
rebase 이해하기  (0) 2022.01.18
Graph에서 Branch 분기가 나타나지 않을 때  (0) 2021.04.23
Git 저장소 개념  (0) 2021.04.23