2012-05-28 2 views
0

Subversion repo를 Atlassian으로 마이그레이션하려고합니다. Atlassian은 가져온 repo 덤프에 프로젝트 당 프로젝트 키와 같은 이름을 가진 루트 디렉토리가 있어야합니다. Atlassian의 프로젝트 키가 FOOBAR라고 가정하면 repo 덤프에 모든 수정에 대해/FOOBAR이 포함되어야합니다. 트렁크, 분기 및 태그 하위 디렉토리도 포함해야합니다. 내가 테스트를 시도 그리고Assembla에서 Atlassian으로 svn을 마이그레이션하십시오.

cat foobar-assembla.dump | svn-dump-reloc "/" "FOOBAR" > foobar-atlassian.dump 

:

Assembla의 SVN 덤프를 재 작성하기 위해, 나는 이런 짓을

svnadmin: File not found: transaction '0-0', path 'FOOBAR/trunk' 
* adding path : FOOBAR/trunk ... 

어떤 아이디어 : 오류 메시지가 생성

svnadmin create test 
cat foobar-atlassian.dump | svnadmin load test 

?

답변

0

에서이 팁을 얻었다. 모든 변환 옵션 텍스트 편집기를 사용하여

해제 :

  1. Node-path: FOOBAR/trunkNode-path: trunk의 모든 인스턴스를 교체합니다.
  2. FOOBAR/trunk이 작성된 수정본에서 , FOOBAR/branchesFOOBAR/tags을 만드는 FOOBAR/trunk을 추가하는 바로 전에 항목을 수동으로 추가하십시오.

파일 내에서 Node-path: trunk과 같은 경우가있을 수 있습니다. 그러나이 경우에 효과가 있었고 다른 대부분의 경우에도 작동해야합니다.

1

덤프 파일에 FOOBAR 디렉토리 자체를 생성하는 트랜잭션이 없기 때문에 이것이라고 생각합니다.

svnadmin load test 바로 앞에 svn mkdir file://$PWD/test/FOOBAR을 실행 해보십시오. 이 때문에 어디

신용을 제공하기 위해, 나는 http://dotslashstar.blogspot.com.au/2011/06/svn-hack-insert-missing-trunk-root.html (가) 나를 위해 일한 다음

+0

+1 : 텍스트 편집기 (nano)를 사용하여 내 자신 만의 방법을 찾았지만 ** svnadmin load가 작동하기 전에'svn mkdir' ** **이 어떻게 작동하는지 볼 수 있습니다. –

관련 문제