개발 커뮤니티에서 merge를 하는것과 rebase 사이의 트레이드 오프에 대해 많은 논의가 이루어지고 있습니다. 여기 rebase의 일반적인 장 / 단점을 소개하겠습니다:
장점:
rebase는 여러분의 커밋 트리를 깔끔하게 정리해서 보기가 좋습니다 모든게 한 줄에 있기때문이죠.
단점:
rebase를 하게 되면 커밋 트리의 (보이는)히스토리를 수정합니다. 예를 들어, 커밋 C1는 과거의C3로 rebase 될 수 있습니다. C1’의 작업이 C3의 다음에 있는것으로 보이게 되는겁니다. 실제로는 C1이 먼저 완료된거인데 말이죠.
어떤 개발자들은 이력이 보존되는것을 좋아하기 때문에 merge를 선호합니다. 그 이외는(저 처럼) 커밋 트리가 깔끔한것을 선호해서 rebase를 선호합니다. 자기 입맛에 맞추면 되겠습니다 :D