svn迁移到git仓库

svn迁移到git仓库并保留commit历史记录


  最近在做svn迁移到gitlab,由于之前一直是由svn做版本控制。最简单的方式是将svn的内容export出来,然后添加到gitlab即可。但是,如果svn用的时间很长了,而且很多commit,

我们希望保存svn commit的信息以便做版本的控制和比较。幸好git提供了相应的解决办法。

 

1.环境准备:

  yum install -y git-svn

2.svn账号与git账号映射,users.txt  

  svn账号=git账号名称<username@mail.com>

3.svn转换为git

  git svn clone svn://ip端口/projectname --no-metadata --authors-file=users.txt --trunk=trunk projectname

  cd projectname

4.添加git仓库

  git remote add origin git@xxx.xxx.xxx.xxx:root/projectname.git

5.提交到gitlab

  git push -u origin master


参考文档:
• http://blog.163.com/pjt_ren/blog/static/188250602013101102615844/
• http://www.lovelucy.info/codebase-from-svn-to-git-migration-keep-commit-history.html

 


 

SVN To Git(zz)

1. 安装git

2. 新建工作目录

3. 下载svn代码:

  git-svn clone xxxxxxxxxxxxxxxxxx

4. 添加remote git服务器 :

  git remote add origin <remote add(git的服务器)>

5. Push 本地代码,到origin的git服务器master 分支

  git push -u origin master

6. 日常同步

  Git svn rebase //获取最新的提交

  git svn fetch //同步代码

  git push -u origin master

  

  

posted @ 2025-11-05 17:04  张大帅哥  阅读(2)  评论(0)    收藏  举报