2009-08-18 3 views
8

을 재현, SVN 저장소를 파괴하고 내 작업 버전은 가장 최신의 하나입니다 는 주요 서버 장애 후 SVN 저장소

내 작업 버전에서 SVN 저장소를 다시 할 수있는 방법은 무엇입니까

? 당신이 당신의 역사를 복구하려면

내 작업 복사본

svn switch NEW_SVN_PATH . 

에서 새 서버에 SVN을 설치하고 시도 후 나는 오류를

Repository UUID '1c604742-6b16-462b-86e4-cc8bce959242' doesn't match expected UUID '6df69aeb-a72c-450d-8102-24036a3855f7' 
+2

가장 좋은 조언은 서버 svn 디렉토리 구조를 백업하는 것입니다. – Powerlord

답변

7
  1. 가 기존 저장소에 저장된 개발 역사는 손실됩니다.

  2. 작업 복사본의 현재 내용으로 새 저장소를 만들 수 있지만 실제로는 새로운 저장소가됩니다. --relocate과 함께도 switch에 연결할 수 없습니다.

이미 작업 복사본의 내용을 새 저장소로 가져온 경우에는 체크 아웃해야합니다. 그렇지 않은 경우 :

svn export WORKING_COPY WORKING_COPY.export # the exported copy will contain no .svn dirs 
svn import WORKINGCOPY.export svn://example.com/new-repository 
svn checkout svn://example.com/new-repository NEW_WORKING_COPY 
+0

모든 속성 (예 : svn : ignore)도 손실된다는 의미입니까? –

+0

예. 작업 복사본에있는 파일의 이름과 내용을 제외한 모든 항목이 손실됩니다. – bendin

+0

이제는 또 다른 질문이 있습니다 ... 역사가 아닐 때 사용되는 바보 같은 .svn 폴더는 무엇입니까? 나는 지금 모든 저장소를 자식으로 이동시키고있다, 충분하다, svn! – jebbie

4

를 얻을, 당신은 운이 있습니다 .. SVN 기록은 작업 복사본이 아닌 리포지토리에 보관됩니다 ...

작업 복사본 (기록이 아닌 파일 만)을 사용하여 새 저장소를 시작하려면 해당 재치 시간 svn importsvn export :

svn export <wc-path> <clean-dir-path> 
svn import <clean-dir-path> <empty-repo-url> 
0

나는 새로운 REPO를 작성 (다른 사람들이 제시하는 일) 전에 작업 폴더에있는을 .svn 폴더를 삭제합니다. 저는 과거에 새로운 레포 또는 고객을 혼란스럽게하는 몇 가지 문제가 있었기 때문에 이것을 말하고 있습니다. 행운을 빈다!