업스트림 SVN 브랜치를 추적하는 로컬 브랜치가 있습니다.이 브랜치에는 많은 변경 작업이 이루어졌지만 로컬 변경 작업도 수행되었습니다. 그 시간 동안 저는 업소를 자신의 지사에 자주 병합 시켰고, 체리 채취 된 고립 된 커밋을 상류로 보냈습니다. 그래서, 본질적으로, 내 역사는 대규모 clusterfest 다음과 같습니다이다업스트림 변경 사항을 푸시하기 전에 많이 병합 된 브랜치 리셋
A--B--C--D--b'-E--F--e'--G--H (svn)
\ \ \ \
a--b--c--d--e--f--g--h--i--j (mine)
는 상류 전자의 변경을 포함하고, 내 지점 상류에서 모든 변경 사항이 포함되어 있습니다. 지금은 (F '다음 수동 병합 해상도 유지됩니다 무엇 인 상태)
A--B--C--D--b'-E--F--e'--G--H
\
a--b--d--f'-g--h--i
에 도착하고 싶습니다. 추가적인 어려움으로는 svn 브랜치의 이름 변경이 있습니다.이 브랜치는 merge 커밋 중 하나에서 수행되었습니다. 여기에는 내 브랜치가 병합 전후의 파일에 대한 변경 사항이 포함되어 있습니다.
어떻게하면 좋을까요? 명백한 git rebase -m svn mine
은 이름을 감지하지 못해서 잘랐지 않고, 내 브랜치의 팁이 업스트림 브랜치와 똑같은 내용을 가진 라인의 충돌에 대해 많은 질문을합니다.
"cherry-pick everything individual"옵션이 승리했다. - / –