cvs2svn으로 예전 프로젝트 저장소 변환하기

과거 프로젝트는 cvs 로 버전 관리를 했었는데 이제 cvs는 쓰지 않고, 지금 하는 프로젝트들은 프로젝트 별로 svn repo에 관리했었기에 이 참에 옛날 repo를 변환해 보자 하고 cvs2svn을 해보기로 했다. 이글은 메뉴얼이라고 보다는 경험담이다. 나중에 다시 작업할 때 까먹지 않도록..

준비물

  • Python 2.4
  • cvs2svn : <a href=”http://cvs2svn.tigris.org/” target=_blank>cvs2svn.tirgis.org </a>사이트에서 <a href=”http://cvs2svn.tigris.org/files/documents/1462/36129/cvs2svn-1.5.1.tar.gz” target=_blank>cvs2svn-1.5.1.tar.gz</a> 이거 다운 받아서 깔았다.
  • 잡다한몇가지툴 : cygwin에서 몇가지 필요한 것들을 가져왔다. 이건 나중에 사용하기 좋으라고 여기에 올려논다. (sort.exe, cvs.exe등등..) cygwin-tools.zip

절차

  1. 먼저 옛날에 쓰던 cvs repo를 적당한 디렉토리에 놓는다. 나는 e:\cvs에 놨다.
  2. 빈 디렉토리를 하나 만들었다. e:\svnrepo라고 만들었다.
  3. 방금 만든 디렉토리에 가서 (TortoiseSVN이 깔렸다는 전제하에) 마우스 오른쪽을 클릭해서 Tortoise SVN > Create Repository here&#를 눌러서 빈 새 저장소를 만든다.
  4. 이제 다운받은 cvs2svn을 적당한 디렉토리에 풀어놓는다.
  5. 그 안에 보면 cvs2svn 이란 파일이 있는데, 이 파일을 cvs2svn.py로 이름을 바꾼다.
  6. 준비물 3번째 잡다한몇가지툴을 cvs2svn깐 디렉토리에 압축을 푼다.
  7. 명령 프롬프트에서 다음의 명령어를 친다.
    cvs2svn.py &#8211;use-cvs &#8211;existing-svnrepos &#8211;encoding-mbcs -s e:svnrepo e:cvs
    
  8. 에러 없이 끝나면 오케이다. e:svnrepo에는 cvs에서 작업한 것들이 저장되어 있을 것이다. 이제 이 디렉토리를 설정된 svn repo 디렉토리로 이동한다.
  9. TortoiseSVN으로 주소 입력해서 repo에서 데이터를 받아온다.
  10. 그러면 Trunk, Tags, Branches 로 디렉토리가 남겨져 있고 모든 데이터가 Trunk에 담겨져 있는 것을 볼 수 있다.

도움주신 글들

Miren.Info의 Subversion 관련 정보
http://miren.info/bbs/viewtopic.php?p=1225#1225

COMMENTS
Related Post