2011-05-10 3 views
4

git rebase을 사용하여 데이터를 연결이 끊긴 SVN 복제 분기로 마이그레이션하려고합니다.Git rebase - 병합 충돌시 강제 덮어 쓰기

내가 이것을 SoundManager2 repo from Github으로 시도하고 있다고 가정 해 봅니다.

리베이스 조치의 처음 20 분 정도가 정상적으로 작동합니다. 그 후에 그것은 약간의 갈등을 치기 시작할 것이다. 대부분 자동으로 해결되지만 관계없이 중단하고 계속합니다.

이 경우 충돌이 무엇인지는 신경 쓰지 않습니다. 충돌 파일을 최신 파일이 무엇이든 덮어 쓰려고합니다. 다른 병합 전략을 구하려고 시도했지만 성공하지 못했습니다.

아이디어 나 생각이 있으십니까? 감사.

+0

나는 어떤 일이 일어나려고하는지 잘 모르겠습니다. 재배치중인 지점의 최신 버전이나 충돌하지 않는 최신 버전을 원하십니까? – MatrixFrog

+0

'master'에서'git-svn'으로 큰 rebase를 실행하려고합니다. 어떤 이유로 든 rebase를 실행하면 'git-svn'이 깨끗한 슬레이트이더라도 여러 가지 병합 충돌이 발생합니다. 내가 원하는 것은 재배치하고있는 지점의 최신 소식입니다. 가능하다면 리베이스를하는 동안 모든 역사를 보존하고 싶습니다. – jocull

+0

또한 전체 분기를 약 500 개의 패치 파일 시리즈로 버렸습니다. 'git am ../ patches/*'를 실행하면 rebase에서 볼 수있는 것과 같은 종류의 충돌이 발생합니다. – jocull

답변

-1

항상이 문제가 발생합니다. 힘내는 충돌이있을 때 아무 것도 생각할 수 없습니다. svn repo에 게시 된 내용이 무엇이든간에 변경 사항을 원한다고 생각하는 것 같습니다. 나는 당신을 돕기 위해 "rerere"를 사용할 것입니다.

최근 변경 사항을 자주 통합하려고하면 병합이 더 나은 경우가 많습니다.

행운을 빈다.

+0

엄격한 히스토리를 시행 할 수있는 방법이있어서 힘내는 두 개의 별개의 가지를 합치려고하지 않습니다. 그들이 준비되기 전에 서로의 위로? – jocull

+0

SVN을 사용하면 제한된 옵션이 있습니다. "따라 잡아야"하고 나서 SVN에서 최신 버전을 자주 가져 와서 동일한 상황에 다시 빠지지 않게해야합니다. 내가 말했듯이, 병합을하고 svn 지점에 합병하십시오. 그걸 밀어 붙이세요. 그런 다음 최신 정보를 유지하십시오. –