svn代码迁移到gitlab

博观而约取,厚积而薄发。这篇文章主要讲述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/xxxxxx

其中参数
no-metadata表示忽略svn无用的信息
trunk表示主干
branches表示分支
xxx表示需要迁移的项目
在gitlab上面创建空白项目
svn代码迁移到gitlab

文章图片

svn代码迁移到gitlab

文章图片

svn代码迁移到gitlab

文章图片

上传代码
需要注意的是如果代码比较多,迁移过程将会非常久,我这边迁移了3G,用了差不多三个小时
进入刚刚迁移的项目目录
git remote add origin http://10.10.10.194/root/test.git git push -u origin master

验证代码
svn代码迁移到gitlab

文章图片

上传后在gitlab网页端已经查看到代码,并且叫开发检查代码有没有问题
使用浏览器访问
svn代码迁移到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【svn代码迁移到gitlab】
svn代码迁移到gitlab

文章图片

svn代码迁移到gitlab

文章图片

执行克隆
git clone ssh://git@10.10.10.194:22365/root/xxx.git


    推荐阅读