2014-07-17 2 views
0

svn-all-fast-export는 svn에서 git로 옮기는 가장 좋은 방법 인 것처럼 보이며 하나의 svn 저장소를 여러 git 저장소로 분할하는 것을 지원합니다.리포지토리를 병합하는 동안 svn에서 git로 변환하는 가장 좋은 방법은 무엇입니까?

나는 반대로하고 싶다. 나는 일련의 밀접하게 관련된 svn 저장소를 가지고있다. 이들은 모두 동일한 분기 이름으로 동시에 분기합니다. 태그 지정은 모든 리포지토리에서 동일합니다. 개별 서브 디렉토리에있는 각 svn 저장소의 파일과 함께 하나의 git 저장소로 결합하려고합니다. 예를 들어 각 저장소의 트렁크 커밋이 날짜 순서대로 마스터에 표시되도록 히스토리를 삽입하려고합니다.

A 
    commit 1 
    commit 4 
B 
    commit 2 
    commit 3 
    commit 8 
C 
    commit 5 
    commit 6 
    commit 7 

내가 자식에 다음을 변환하고 싶습니다 : 트렁크

보다 구체적으로, 내가 svn을 한 저장소는 시간 순서 (각 지점에 커밋이 유사)에 번호가 표시 커밋

commit 1 
commit 2 
commit 3 
commit 4 
commit 5 
commit 6 
commit 7 
commit 8 

은 svn을 모두 빠른-E를 수 :처럼 보이는 마스터의 역사를 가진

bigproject/ 
    A/ 
    B/ 
    C/ 
xport 이렇게 해? 나는 그것의 어떤 예를 발견하지 못했다. 거기에 또 다른 기존 도구가 있습니까?

답변

1

Subversion에서 Git으로 이전하기 위해 수행했던 작업보다 약간 간단했던 SubGit을 이전 프로젝트에서 사용했습니다. 개인적으로, SubGit 이전에 여러 마이그레이션 도구를 사용해 보았습니다. 전반적인 유용성 및 상식 구성 옵션에 즐겁게 놀랐습니다.

다음 게시물에는 작업을 수행하기 위해 SubGit과 같은 도구를 활용하는 방법에 대한 아이디어가 있습니다 (https://serverfault.com/questions/420828/migrate-multiple-svn-repositories-into-single-git-repository). 그러나 다시 한번, 나는 SubGit을 기본적으로 git-svn bridge와 같이 제안 할 것이다. git-svn bridge는 기본 마이그레이션 작업을 위해 git (매우 취약한 것으로 보인다)에 내장되어있다.

관련 문제