git 브랜치를 이용해서 마스터 메인라인으로 머지했는데, 한 파일이 동시에 수정되었기 때문에 머지하고 나면 파일이 더 많아졌습니다<<<HEAD
이렇게! 갈등을 해결하는 방법? 제출하기 전에 충돌 파일을 수동으로 편집하고 해당 <<<HEAD
>>>DEV
을 제거해야 합니까?
dev를 마스터에 병합하면 이 파일이 나타납니다. <<< HEAD
>>> dev
이렇게 성공적으로 병합하려면 어떻게 해야 할까요? 수동으로 편집한 후 다시 제출해야 합니까?
충돌이 있는 경우 수동으로 편집해야 합니다! 이 문제는 주로 여러 사람으로 구성된 팀에서 발생합니다! 갈등을 해결할 때는 팀원들과 협력해보세요!
병합 가능하다고 판단된 경우(예를 들어 분기 코드에 문제가 없는 경우) 병합 중 충돌이 발생하면 수동 처리가 필요합니다. 물론, 마스터에 대한 충돌을 처리하는 것은 골치 아픈 일입니다. 그래서 또 다른 방법이 필요합니다.
두 가지 아이디어가 있습니다.
master를 사용하여 dev 브랜치에서 충돌이 발생하도록 하세요. 수동으로 해결한 후 다시 master로 병합하면 됩니다.
git rebase 사용
예. 같은 장소를 변경했기 때문에 충돌을 수동으로 해결해야 합니다. 표시된 위치를 하나의 코드로 병합하면 됩니다. 또는 특정 충돌을 방지하기 위해 체리픽(cherry-pick)이나 리베이스(rebase)를 사용할 수 있습니다
일반적으로 마스터 브랜치는 dev 브랜치를 병합하는 데 사용됩니다. 실제 충돌은 dev에서 해결됩니다. 다른 사람의 코드에 영향을 미치지 않도록 충돌 차이점을 주의 깊게 살펴보는 것이 좋습니다.
명령줄 도구는 매우 강력하지만, 특히 충돌을 해결할 때 원리를 이해한 후 시각적 도구를 사용하는 것이 여전히 매우 편리합니다.
이러한 충돌이 발생하면 신중하게 수동으로 해결해야 합니다. 시각화 도구를 사용하면 충돌을 쉽게 확인하고 충돌 지점 사이를 빠르게 이동할 수 있으며, 대부분의 충돌은 몇 번의 마우스 클릭만으로 해결할 수 있습니다.
명령줄 및 시각적 도구와 함께 git을 사용하는 것이 좋습니다. 더 나은 시각적 도구는 TortoiseGit입니다.
또한, 개발자가 사양을 준수하여 git을 사용하는 한 병합 마스터 충돌이 발생하지 않도록 개발자 교육을 강화하고 표준화하는 것이 좋습니다. git 사용 현재 여기서는 -flow
를 사용합니다.