前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >从SVN迁移到GitLab

从SVN迁移到GitLab

作者头像
俞其荣
发布2019-01-03 11:58:47
2.3K0
发布2019-01-03 11:58:47
举报
文章被收录于专栏:俞其荣的博客俞其荣的博客

之前公司代码版本管理用的都是 SVN ,最近搭了 GitLab 。所以想把代码从 SVN 迁移到 GitLab 上。但是 SVN 的提交记录又不能丢,也要跟着一起迁移,所以本篇记录一下迁移的方法。

yum install -y git-svn

安装 git-svn ,可以帮助你很轻松的从 SVN 转到 GitLab 上。

然后 cd 到要迁移到 SVN 项目的根目录下

svn log --xml | grep author | sort -u | perl -pe 's/.>(.?)<./$1 = /'

这条命令会输出 SVN 所有提交过的人的名字,比如

<author>xiaoming</author>

<author>xiaowang</author>

<author>xiaohong</author>

然后新建一个文件,用于保存该记录

touch svn-history.txt

再然后我们就要对这个记录做一些处理,能让 Git 识别这些代码提交者

vi svn-history.txt

把内容改成如下:

xiaoming = xiaoming xiaoming@163.com

xiaowang = xiaowang xiaowang@qq.com

xiaohong = xiaohong xiaohong@qq.com

保存好后,输入命令

git svn clone svn://svn.yoursvnaddress.com/XXXX/ --no-metadata --authors-file=svn-history.txt

这条命令会在当前目录下新建一个 XXXX 项目,这个 XXXX 项目是用 Git 的。

cd XXXX

git remote add origin git@yougitaddress:xxx/XXXX.git

git push origin --all

这样就完成了从 SVN 到 GitLab 的迁移,并且是包含了 SVN 提交记录的。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.01.01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档