squash merge 로 인한 git conflict 분석 및 해결
문제 정의 팀의 브랜치 전략에 대해 우선 설명하자면 일주일동안 작업한것을 Develop에 머지하고 문제 없으면 Master로 머지하는 방식 작업 브랜치는 각자 생성하고 그 브랜치를 Weekly 브랜치에 PR후, 코드리뷰 후 Approve를 받아 머지시킴 커밋 로그를 깔끔히 관리하기 위해 Squash Merge를 활용하기로 결정 문제 발생 Weekly -> Develop 머지시 All Conflict 가 발생했고 당연히 Develop -> Master 머지도 불가 문제 분석 Squash Merge 시행시 기존 커밋 히스토리가 하나의 커밋으로 합쳐지며 새로운 히스토리 하나로 통합된다 이러면 Weekly 에서 Squash Merge 된 커밋을 Develop 에서는 커밋 히스토리 추적이 불가하다. 커밋 ID로 히스토리가 추적되는데 Develop 입장에서는 Weekly에서 Squash 된 새로운 커밋은 생판 처음보기 때문 아래의 그림은 팀원에게 설명하기 위해 그린 그림. ...