Google에서이 게시물을 보는 다른 사람들을 위해. 브랜치를 병합 하거나 리베이스하는 두 가지 옵션이 있습니다 . 둘 다 다르게 작동하지만 결과는 비슷합니다.
허용 대답은 A는 REBASE . 이렇게하면 모든 커밋이에 수행 된 our-team 다음에 수행 된 커밋이 적용 featurex되어 필요에 따라 병합하라는 메시지 가 표시됩니다 .
리베이스에 대한 한 가지주의 사항은 브랜치 기록을 잃거나 다시 작성하는 것입니다. 이 것 지점에 근무 다른 사람에 대한 문제를 일으킬 수 있으며, 일부 원격 도구는 그것에 대해 불평 할 것이다. 당신이하고있는 일에 대해 확신이 있다면--force 플래그의 목적입니다.
어떤 다른 포스터가 제안하는 것은입니다 병합 . 이것은 featurex어떤 상태를 가진 브랜치 를 가져와 현재 상태 인의 병합을 시도 our-team하여 our-team.에 푸시하기 전에 하나의 큰 병합 커밋을 수행하고 모든 병합 오류를 수정하라는 메시지를 표시합니다 . 차이점은 당신이 적용된다는 것입니다 featurex커밋을 하기 전에our-team 새로운 커밋하고 차이를 고정. 또한 히스토리를 다시 작성하지 않고 이전에 온 것을 다시 작성하는 대신 하나의 커밋을 추가합니다.
두 옵션 모두 유효하며 동시에 작동 할 수 있습니다. 기능 브랜치에 대해 일반적으로 수행되는 작업 ( 즉, git-flow 와 같은 광범위한 도구 및 방법론을 사용하는 경우 )은 기본 브랜치에 병합하고 종종 병합 요청을 통해 모든 충돌을 해결하는 것입니다. 하나 (또는 여러 개의) 병합 커밋으로 발생합니다.
Rebasing은 흥미로운 옵션으로, 결국 병합을 진행하기 전에 분기를 수정하고 하나의 큰 병합 커밋을 수행해야하는 고통을 덜어줍니다.