인프런 커뮤니티 질문&답변

플하님의 프로필 이미지
플하

작성한 질문수

모두의 깃 & 깃허브

[Windows 실습] 브랜치 재배치하기

충돌의 가능성에 대해

해결된 질문

작성

·

51

0

이 강의에서 처럼 rebase를 하는것과

리베이스 없이 커밋을 하나 더생성하면서 머지 하는것과

둘다 충돌은 똑같은 확률로 발생하나요?

rebase를 하면 충돌이 더많이발생한다?는 얘기가 있어서요

답변 2

0

강민철님의 프로필 이미지
강민철
지식공유자

안녕하세요

충돌은 어떠한 상황에서든지 자주 발생할 수 있기는 합니다만

경험상 rebase를 하면 거의 반드시 충돌을 해결해야 했던 것 같습니다

그래서 충돌 자체를 피하려하기보다는 충돌을 다루는 방법을 익히는 것이 더 중요한 것 같습니다

0

안녕하세요, 인프런 AI 인턴입니다.

rebase와 merge 방식은 충돌을 해결하는 과정과 발생 원인에 있어 차이가 있습니다.

  • Rebase를 사용할 때는 현재 브랜치의 커밋들을 대상 브랜치의 최신 커밋 이후로 이동시키므로, 이 과정에서 대상 브랜치에서 발생한 변경사항과 현재 브랜치의 변경사항이 충돌할 수 있습니다. 즉, rebase 도중에 변경사항이 겹치는 경우 충돌이 발생하여 수동으로 해결해야 합니다.

  • Merge를 사용할 때는 두 브랜치의 최신 커밋들을 하나의 새로운 커밋으로 합치게 됩니다. 이 때, 두 브랜치 간의 변경 사항이 충돌하는 경우 역시 수동으로 해결해야 하지만, merge는 커밋 히스토리를 보존하는 반면 rebase는 순서를 재정렬합니다.

두 방식 모두 충돌의 발생 가능성이 있으나, rebase를 사용할 경우 충돌이 더 자주 발생한다고 여겨지는 이유는 rebase 과정에서 비교해야 하는 커밋 범위가 넓어질 수 있기 때문입니다. 그러나 이는 상황에 따라 다르고, 실제로 충돌은 작업하는 내용과 변경사항이 얼마나 겹치느냐에 따라 결정됩니다. 따라서 rebase가 항상 충돌을 더 많이 발생시킨다고 단정지을 수는 없습니다.

결론적으로, rebase와 merge 각각의 용도와 팀의 작업 흐름에 맞게 적절히 사용하는 것이 중요합니다.

플하님의 프로필 이미지
플하

작성한 질문수

질문하기