svn代码迁移到gitlab

Posted 草根追逐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了svn代码迁移到gitlab相关的知识,希望对你有一定的参考价值。

由于业务的发展,旧的svn采用的管理账号密码的方式比较不方便以及没有web界面,决定将svn代码迁移到gitlab上面,具体按以下步骤

安装git-svn,没有安装这个软件包,没法使用git svn clone命令

yum install -y git-svn.x86_64

进行迁移

git svn clone --stdlayout --no-metadata  --trunk=/ --tags=tags --branches=branches svn://10.10.10.202/xxx  xxx

其中参数
no-metadata表示忽略svn无用的信息
trunk表示主干
branches表示分支
xxx表示需要迁移的项目

在gitlab上面创建空白项目



上传代码

需要注意的是如果代码比较多,迁移过程将会非常久,我这边迁移了3G,用了差不多三个小时
进入刚刚迁移的项目目录

git remote add origin http://10.10.10.194/root/test.git
git push -u origin master

验证代码


上传后在gitlab网页端已经查看到代码,并且叫开发检查代码有没有问题

使用浏览器访问

使用git clone 访问

需要注意的是因为使用容器安装gitlab,所以容器的默认ssh的22端口需要映射成宿主机的其他端口我这里使用22365,并且需要将客户端所有在ssh公钥上传到gitlab

客户端公钥

cat /root/.ssh/id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCkXlxnD96NOGpei+upy9EgfPvPkLtgKdzkxitzRj6wHAg9PRewohdQ1tYCwh4fK73DrN7n48I+H26fk694qTsnHRAd/7jtronPv1YOvGPCpCDsae+f7JN9fsOQtYQCjtec+aRiEi8J1lmtQktjh4X+GYQbyqYETVyX76rrE4LxUT3UuFPg9ile7Ahdqon5vXC+Rm6FtCkZQzvCn1/Awes/mYLGsHy0POqcpm35lGaRUYkO/fpGiUt49yeuu2XasjmOCyTGZKVgPks0U0/Pjxi9cbpgv2LANMGE2rvUCMy7Zsb9Wo8e8a+9zltWP+XIF8YbddTk2a8rKC5hhPJko5Qm3fiRP3zwZYAANirzlttpeNuI047ivtOQc5kDslyfqxsrkSHa4XFgBEkSr057ZaUezGXEPifLq7tndQVHKTePR5nFWFsU6xK7h1tiMHFnOxaZIO8YfF9WMvuxr7KPxsYin8JCLTALzBN2SLg8fTbuW0BjzGUemy7JcFaPreK17gM= root@localhost-203-root-all

上传公钥到gitlab


执行克隆

git clone ssh://git@10.10.10.194:22365/root/xxx.git

以上是关于svn代码迁移到gitlab的主要内容,如果未能解决你的问题,请参考以下文章

如何同步迁移之后继续在SVN提交的代码到Git

SVN迁移Gitlab步骤

从svn迁移到git

SVN迁移到gitlab

SVN-GitLab数据迁移

SVN迁移到GitLab