퍼포스 윈도우 서브버전 마이그레이션 요약

준비 작업

다운로드

모드 결정

  • 임포트 모드: 리비전 단위로 이전합니다.
  • 컨버트 모드: 저장소 전체를 이전합니다.
  • 점진적 갱신 모드: 임포트 모드로만 가능하며 서브버전의 새로운 리비전들을 퍼포스로 임포트합니다.

요구 사항

  • SVN 덤프 파일 (--delta 플래그 없이 생성해야 합니다.)
  • Java SE Runtime 1.7
  • p4d 2010.2 이상
  • 임포트 모드는 작동중인 퍼포스 서버가 필요합니다. 가능하면 비어있는 저장소로 작업 중인 내용이 없어야 합니다.

이전 작업

요구 사항

  • TortoiseSVN
  • 관리자 권한 커맨드 라인 콘솔

로컬 백업

SVN 관리자 권한이 없는 경우에는 로컬에 저장소를 동기화합니다.

로컬에 비어있는 저장소를 생성합니다.

mkdir SVNBackups
cd SVNBackups
svnadmin create LOCAL_REPO_NAME

서브버전 후킹 배치 파일을 작성합니다.

notepad.exe LOCAL_REPO_NAME\hooks\pre-revprop-change.bat
@ECHO OFF
exit 0

동기화를 시작합니다.

svnsync init file:///d:/SVNBackups/LOCAL_REPO_NAME svn://REMOTE_REPO_HOST/PATH  
svnsync sync file:///d:/SVNBackups/LOCAL_REPO_NAME

덤프 생성

svnsync sync file:///d:/SVNBackups/LOCAL_REPO_NAME
svnadmin dump LOCAL_REPO_NAME > LOCAL_REPO_NAME.dmp

변환 설정

디폴트 설정 파일을 생성합니다.

java -jar p4convert.jar --type=SVN --default
ren default.cfg LOCAL_REPO_NAME.cfg

현재 상황에 맞도록 설정 파일을 변경합니다.

notepad.exe LOCAL_REPO_NAME.cfg
com.p4convert.svn.dumpFile=D:\\SVNBackups\\LOCAL_REPO_NAME.dmp

com.p4convert.p4.caseMode=First
com.p4convert.p4.charset=utf8
com.p4convert.p4.client=USER_HOST
com.p4convert.p4.clientRoot=D:\\PerforceWorkspaces\\USER_HOST
com.p4convert.p4.depotPath=depot

com.p4convert.p4.port=PERFORCE_HOST:PORT
com.p4convert.p4.root=

com.p4convert.p4.subPath=REMOTE_REPO_PATH
com.p4convert.p4.unicode=true
com.p4convert.p4.user=USER

변환 시작

java -jar p4convert.jar --config=LOCAL_REPO_NAME.cfg