에서
자식-SVN에 대한 작은 튜토리얼을 찾을 수있는 당신의 VCS에 충실하고 BeyondCompare 또는 만화경 같은 적절한 병합 도구를 얻기 위해 조언을 것입니다 문제가 있거나 그냥 svn을 사용해야합니다.
SVN에 보유하고 싶은 정보가 얼마나 많은지에 달려 있다고 생각합니다. git을 사용하여 병합을 수행하는 경우 SVN은 변경 사항의 출처를 알 수 없거나 SVN 트렁크처럼 보이며 분기가 여전히 분리되어 있다고 생각합니다.
사람들이 내가 자식을 사용했는지 그리고 svn에 병합에 대한 메타 데이터가 있습니까?
아니오, 트렁크에 새로운 커밋처럼 보일뿐입니다.
트렁크의 복제본과 내가 선택한 1 개의 분기를 수행 할 수 있습니까?
git-svn을 새로운 자식 repo로 복제했다면 그렇다. git-svn을 복제하고 관계없는 분기를 삭제하거나 복제하기 전에 git-svn 저장소에서 직접 수행하십시오.
게시 방법은 convert an SVN repo to a git one입니다. 나는이 상황에서 대부분이 적용될 것이라고 생각한다.
완전한 복제가 필요합니까? 아니면 분기가 만들어진 지점에서 가져올 수 있습니까?
--depth
옵션을 사용하지 않는 이상 자식 복제본은 일반적으로 전체 복제본입니다. 이전 기록을 버리려면 모든 커밋을 이전 명령으로 스쿼시하거나 .git
디렉토리를 삭제하고 새 저장소를 초기화하십시오.
가치가있을 수 있으며 svn 대신 git를 사용했다는 것을 알 수 없습니다. 그래도 'git rebase'를 어떻게 사용하는지 매우주의해야한다. 그것은 정말로 svn 역사의 혼란을 만들 수 있습니다. –
어떤 병합입니까? 선택된 커밋/리비전? 또는 트렁크에서 커밋을 계속 유지하면서 트렁크로 다시 통합하려는 피쳐 브랜치입니까? –
단계별 가이드 : http://myhumblecorner.wordpress.com/2011/08/25/git-svn-cheatsheet-for-git-rebels-in-an-svn-workplace/'git checkout; git merge --squash ; 자식 커밋; 자식 svn dcommit # - 스쿼시는 키' –