2017-01-30 17 views
-1

이것은 내가 달성하기 위해 노력하고 무엇svnadmin - 꽃밥 프로젝트의 루트 디렉토리에 프로젝트의 하위 디렉토리를 마이그레이션은

Project_A 
    -SubFolder_Y 
     Project_X 

Project_B 
    Project_X 

그래서 기본적으로 프로젝트 B의 루트로에 프로젝트 A로부터 하위 디렉토리 'Project_X'를 마이그레이션 모든 개정판.

SVN 서버에 액세스 할 수 있으므로 svnadmin 명령을 사용하려고합니다. 이 작동하지 않는 것

1. svnadmin dump \\Repositories\Project_A > ProjectA.dump 
2. svndumpfilter include Project_X --drop-empty-revs --renumber-revs <Project_A.dump> Project_X.dump 
3. svnadmin load --ignore-uuid \\Repositories\Project_B <Project_X.dump 

, 내가 여기서 무엇을 놓치고 :

는 내가의 라인을 따라 그렇게 뭔가에 싶어 알아?

미리 감사드립니다.

+0

PROJECTA 및 ProjectB 다른 저장소입니다, 바로 다음과 같이

명령은해야 하는가? – bahrep

+0

*이 기능이 작동하지 않는 것 같습니다. 여기서 무엇을 놓치고 있습니까? * 정확히 작동하지 않는 것은 무엇입니까? 오류가 있습니까? – bahrep

+0

@bahrep 예 ProjectA와 ProjectB가 다릅니다. 위의 코드는 'SubFolder_Y'를 내가 원하지 않는 Project_X의 부모로 유지합니다. –

답변

0

먼저 무엇보다 SVNBook chapter about repository history filtering을 읽어야합니다. 그리고 어떤 테스트 레포로 테스트하기 전에 svnadmin load 실제 저장소로 덤프하지 마십시오. svndumpfilter이 생성하는 필터링 된 덤프에 예상되는 모든 데이터가 포함되어 있는지 확인해야합니다.

위의 코드는 또한 내가

이것은 위의 링크 된 문서의 장에서 다루고 싶지 않은 Project_X의 부모로 'SubFolder_Y'를 유지한다. SVNBook은 덤프 파일을 텍스트 편집기 나 스크립트를 사용하여 수동으로 편집하거나 부모 경로를 다시 작성하거나 (귀하의 경우 SubFolder__Y) 제안합니다. 이 작업의 복잡성은 덤프 파일, 크기, 저장소 경로 등의 수정 횟수에 따라 다르지만 일반적으로 위험하지 않은 작업이며 수동으로 덤프 파일을 수정하지 않는 것이 좋습니다.

상위 경로를 다시 쓰는 대신 필터링 된 덤프를로드 한 후 Project_X를 새 저장소의 루트로 이동할 수 있습니다.

svn move FROM-URL TO-URL -m "ENTER LOG MESSAGE"