2009-11-04 3 views
3

tortoiseSVN을 사용하여 로컬 저장소를 만들었습니다. 이제 저장소를 내 DreamHost 계정으로 마이그레이션하고 싶습니다.새로운 SVN 저장소를 이전 버전으로 마이그레이션하는 방법은 무엇입니까?

파일을 이동했지만 DreamHost가 SVN의 이전 버전을 사용하고있는 것으로 보입니다. 예상 FS 형식 '2'; 나는 명령을 실행할 때

svnadmin load 'repository dir' 

svnadmin 다시 뱉어 발견 형식 '4'

해결책?

답변

5

편집이 : 사실 서버의 새로운 버전으로 대상 저장소를 만든 인해 귀하의 메시지가 다음 svnadmin이전 버전으로 덤프를로드했습니다. 올바른 절차는 아래를 참조하십시오.


내가 svnadmin load 부분을 이해하지 않는다, 당신은 svnadmin dump와 전에 덤프 파일을 만들었습니다? 일반적으로 형식을 변경하면 안되기 때문에 버전간에 저장소를 이식하는 것이 가장 좋습니다.

svnadmin create <newrepos_path> 
svnadmin load <newrepos_path> < dump_file 

당신은 할 수 있습니다 :

svnadmin dump <repos_path> > dump_file 

및 대상 서버에

(오래된 SVN 버전) :

그래서 원래 저장소를 사용 버전 (최신 SVN 버전)에해야 큰 저장소가있는 경우 덤프에 --deltas 옵션을 사용하면 해당 덤프가 상당히 커질 수 있습니다.

그게 당신이 한 것이고 실패하면, 각각의 버전을 정확하게 설명하고 몇 가지 세부 사항을 알려주시겠습니까? 작동하지 않는 덤핑 경우

2

, 당신은 또한 새 저장소에 내용을 마이그레이션하는 svnsync을 시도 할 수 있습니다 : 귀하는 DreamHost 저장소의 작성 후, 간단한 미리 revprop 변화를 단지 0을 종료 후크를 만들 , propchanges 수 있도록이 후

#!/bin/sh 
exit 0 

을 당신은 시작할 수 있습니다

svnsync init [DREAMHOST_URL] [OWN_REPO_URL] 

svnsync sync [DREAMHOST_URL] 

는 모든 버전이 새 reposit에 유입 될 ory ..

+0

SVN 설명서에 따르면 버전 1.0 이후로는 호환성 문제가 없어야했지만 시도한 적은 없습니다. 하지만 OP의 설명에서 '4'는 이상하게 들리며 명령에서 정확히 무엇이 수행되었는지는 분명하지 않습니다 ... 어떤 종류의 회신이 있었으면합니다. (ref dump : http : //svnbook.red- bean.com/nightly/en/svn.reposadmin.maint.html#svn.reposadmin.maint.migrate) – RedGlyph

+0

덤프 형식이 초과 작업으로 변경되었습니다.따라서 svn 1.1 클라이언트는 svn 1.6 클라이언트에서 덤프 형식을 이해할 수 없습니다. 그게 정확히 그가 말한 문제입니다 –

+1

사실, 저는 그가 svnadmin "old version"이 svnadmin "new version"에 의해 생성 된 저장소에 덤프를로드하는 데 실패했다는 사실을 거의 확신합니다. 나는 전에 그것을 보았어 야했다. 나는 1.6 -> 1.4에서 덤프의 빠른 마이그레이션 테스트를 수행했으며, 매력처럼 작동한다 :-) – RedGlyph

관련 문제