Google Code 의 SVN 저장소를 복사하기

Subversion 서버의 관리자라면 svnadmin 으로 저장소를 쉽게 복사하겠지만 Google Code와 같은 외부 관리 하에 있는 저장소를 사용할 때는 svnsync 를 사용해야 한다.

svnsync 는 원격 저장소의 로그를 모두, 또는 선택적으로 복사한다. 따라서 최신 코드 뿐 아니라 과거의 변경 작업까지 모두 필요할 때 유용하다.

 

여기서는 Windows 를 기준으로 svnsync 의 사용법을 간략하게 설명한다.

  1. 로컬 저장소를 만든다. 원격 저장소를 여기에 복사할 것이다. 로컬 저장소의 경로가 D:\workspacetempearlgrey라고 가정하면 다음과 같이 명령을 내린다.
    svnadmin create d:\workspacetempearlgrey
  2. pre-revprop-change.bat 파일을 생성하고 아래와 같이 편집한다. @echo off exit /b 0
  3. svnsync 초기화.
    svnsync init [email protected] --source-password=mypassword file:///d:/workspace/temp/earlgrey http://earlgrey.googlecode.com/svn
  4. 동기화(복사) 시작.
    svnsync sync [email protected] --source-password=mypassword file:///d:/workspace/temp/earlgrey

이렇게 만든 복사본을 자신이 사용하는 로컬 SVN 에 붙이면 일은 끝난다.

이러한 기법은 외부의 오픈소스 프로젝트를 인터넷과 단절된 사내 망에 가져올 때 유용하다.

참고 문헌

svnsync로 PC에 svn repository를 mirroring하기

최 재훈

블로그, 페이스북, 트위터 고성능 서버 엔진, 데이터베이스, 지속적인 통합 등 다양한 주제에 관심이 많다.
Close Menu