1. SVN 서버로부터 소스 및 이력을 GIT 형태로 가져 오기
cd orggit
git svn clone svn://softgear@SVNSERVERIP:PORT/trunk/project
2. 받은 디렉토리를 통째로 다른 서버(git전용)로 복사, 읽기쓰기 권한 부여
scp -r -P SSHPORT project softgear@GITSERVER:/opt/git/project
3. GIT 서버의 리파지토리를 bare 로 변경
http://stackoverflow.com/questions/2199897/how-to-convert-a-normal-git-repository-to-a-bare-one
cd /opt/git/project
mv .git .. && rm -fr *
mv ../.git .
mv .git/* .
rmdir .git
git config --bool core.bare true
cd ..; mv project project.git # renaming just for clarity
4. 다른 PC에서 GIT 서버로부터 clone 받고 작업후 push.
5. SVN 서버에서 GIT 서버로부터 clone 받음
cd newgit
git clone ssh://softgear@GITSERVER:PORT/opt/git/project.git
6. remote SVN 정보를 복사 (처음 받았던 git 리파지터리 orggit 로부터)
cd .git
cp -r orggit/.git/svn .
cp orggit/.git/refs/remotes/git-svn
vi config ( orggit/.git/config 의 [svn-remove "svn"] 섹션을 붙인다.
7. GIT에서 변경된 내용을 SVN에 다시 반영
git svn dcommit
8. SVN에서 변경된 내용을 GIT로 반영
git svn rebase
댓글 없음:
댓글 쓰기