마이그레이션
이 마이그레이션 가이드는 전환 기간 동안 SVN에서 Git으로의 단방향 동기화를 지지합니다. 즉, 팀이 Git에 익숙해지더라도 원래 SVN 리포지토리에만 커밋해야 합니다. 전환할 준비가 되면 SVN 리포지토리가 어떤 상태에 있든 정지되어야 합니다. 그런 다음 개발자는 로컬 Git 리포지토리에 커밋하고 Bitbucket을 통해 공유하기 시작합니다.
SVN에서 Git로의 개별 전환은 매우 직관적인 마이그레이션을 가능하게 합니다. 모든 개발자들은 사용하게 될 새로운 Git 워크플로를 이미 이해하고 Bitbucket에서 복제한 로컬 리포지토리에서 Git 명령을 사용하여 충분히 연습해 봤을 것입니다.
이 페이지에서는 마이그레이션의 마지막 단계를 안내합니다.
Git 리포지토리 동기화
Git으로의 마이그레이션을 완료하기 전에 Git 리포지토리에 SVN Git 리포지토리에 커밋된 새로운 변경 사항이 있는지 확인해야 합니다. 동기화 단계에서 설명한 것과 동일한 프로세스를 통해 확인할 수 있습니다.
git svn fetch
java -Dfile.encoding=utf-8 -jar ~/svn-migration-scripts.jar sync-rebase
java -Dfile.encoding=utf-8 -jar ~/svn-migration-scripts.jar clean-git --force
SVN 리포지토리 백업
마이그레이션된 리포지토리에서는 여전히 Git 이전의 프로젝트 기록을 볼 수 있지만 원시 SVN 데이터를 탐색해야 할 경우를 대비하여 SVN 리포지토리를 백업하는 것이 좋습니다. SVN 리포지토리를 백업하는 쉬운 방법은 중앙 SVN 리포지토리를 호스팅하는 컴퓨터에서 다음을 실행하는 것입니다. SVN 리포지토리가 Linux 컴퓨터에서 호스팅되는 경우 다음을 사용할 수 있습니다.
svnadmin dump | gzip -9 >
관련 자료
전체 Git 리포지토리를 이동하는 방법
솔루션 보기
Bitbucket Cloud에서 Git에 대해 알아보기
Replace svn-repo
with the file path of the SVN repository that you backing up, and replace backup-file
with the file path of the compressed file containing the backup.
SVN 리포지토리를 읽기 전용으로 설정
이제 모든 개발자가 Git을 사용하여 커밋해야 합니다. 이 규칙을 적용하기 위해 SVN 리포지토리를 읽기 전용으로 설정할 수 있습니다. 이 프로세스는 서버 설정에 따라 다를 수 있지만 svnserve
디먼을 사용하는 경우에 SVN 리포지토리의 conf/svnserve.conf
파일을 편집하여 이를 수행할 수 있습니다. [general]
섹션에 다음 줄이 포함되어야 합니다.
anon-access = read auth-access = read
이 작업은 svnserve
에 익명 사용자와 인증된 사용자 모두 읽기 권한만 있음을 알려줍니다.
요약
프로젝트를 Git으로 마이그레이션하는 데 대한 모든 내용을 다루었습니다. 이제 팀에서는 완전히 Git 워크플로로 개발하고 분산된 개발의 모든 이점을 누릴 수 있습니다. 수고하셨습니다!
이 문서 공유
다음 토픽
여러분께 도움을 드릴 자료를 추천합니다.
이러한 리소스에 책갈피를 지정하여 DevOps 팀의 유형에 대해 알아보거나 Atlassian에서 DevOps에 대한 지속적인 업데이트를 확인하세요.