내 수수께끼입니다. 팀 구성원이 공급 업체 구성 요소를 수정했습니다. 그런 다음이 구성 요소가 현재 버전으로 업그레이드되어 팀 변경 사항을 덮어 씁니다.'병합'하지만 같은 지점에 커밋 된 원격/로컬 /베이스 지정
해당 부분에는 팀 동료의 중요한 변경 사항이 있었지만 업그레이드로 인한 최소한의 변경 사항은 추가되었습니다.
이---component version 1.0----team change A---team change B---component version 2.0
(stock) (result of upgrade)
내가 원하는 것은과 같이 병합을하는 것입니다 : 내가 가지고있는 것은 이것이다
----team change A---team change B
/ \
---component version 1.0 successful 'merge'
(stock) /
\------------component version 2.0
(result of upgrade)
근거 우리가 component version 1.0
에서 공급 업체 변경 사항을 볼 수있는 경우 팀 변경 사항을 적용하는 것은 쉽다는 것을 component version 2.0
으로 변경하면 component version 1.0
에서 team change B
으로 변경되며 두 변경 사항 집합이 병합됩니다. 내가 알고있는 것처럼
,이 작업을 수행 할 수있는 유일한 방법은, team change B
에 지점을 다시 component version 1.0
에서 새로운 지점을 체크 아웃과 패치로 component version 1.0
및 component version 2.0
사이 DIFF을 적용, 가지가 만든 병합하고 커밋하는 것 해결.
기본적으로 git merge --BASE='component version 1.0' --LOCAL='team change B' --REMOTE='component version 2.0'
같은 병합을 시뮬레이트하여 병합 해결 도구를 사용하여 결과 파일의 모양을 결정할 수 있습니다.
재설정 마스터는 옵션이 아닙니다. 실제로 araxis merge의 3-way diff/merge 기능을 사용하여 종료되었습니다. 각 창에서 동일한 파일을 선택한 다음 각 창에서 다른 버전을 선택했습니다. 왼쪽 팀 변경 B, 중간 공통 조상, 오른쪽 구성 요소 버전 2.0. 내가 프라 크 시스에 접근 할 수 없다면, 이것이 최고의 대답이었을 것입니다. – kayaker243