SVN及日志迁移到Gitlab

2 篇文章 0 订阅
1 篇文章 0 订阅

1、SVN准备迁移到Gitlab的工作

     1.1 将svn提交记录导出,如下图操作:svn log>log.txt  

   导出后将生成一个提交记录的log.txt的文件,文件格式如下所示:

1.2 然后创建svn2git.txt文件,作用是svn用户名与git用户名的一个映射文件。格式如下:

      示例:wei=wei <wei@gmail.com>

     可以将上面导出的log.txt文件中的用户名都对应到svn2git.txt中去。将svn2git.txt放到D盘根目录下。

1.3 找到你要存储git的目录打开Git BASH,如下我新建个目录用来存储切换到git后的代码

1.4 打开Git BASH后,使用命令:

 git svn clone "http://×××.×××.×××.×××/×××/×××/test-test-api" --authors-file="D:/svn2git.txt" --no-metadata test-test-api
标红处分别为svn地址,svn2git文件的目录, 自定义的工程名

如下图所示会报错。

Ignoring error from SVN, path probably does not exist: (160013): Filesystem has no item:'****' path not found

Do not be alarmed at the above message git-svn is just searching aggressively for old history.

1.5  可以添加版本号来解决上面的问题,如下命令:

 git svn clone -r268600:HEAD "http://×××.×××.×××.×××/×××/×××/test-test-api" --authors-file="D:/svn2git.txt" --no-metadata test-test-api  (这里版本号使用的是最新的记录,迁移后只有最新的一条提交记录)

其中-r版本号可以从log.txt中查看。

 

为了方便将svn2git.txt文件放到和Git BASH 同级目录,然后用如下命令:  (这里版本号使用的是最初始的记录开始) 使用下面的命令测试后,可以将所有的svn提交记录迁移到git上。

git svn clone "http://×××.×××.×××.×××/×××/×××/test-test-api" --authors-file=svn2git.txt --no-metadata  -r2800:HEAD test-test-api 

执行过程中会将所有的 r28** 记录打印出来,类似如下图:

在操作上述命令时,我这边报错提示: Author: **** not defined in svn2git.txt file

其实是存在的,但不知道为什么会报这个错。所以这里解决办法是:将svn2git.txt的第一行空出来,回车一下。然后重新执行上面的命令就正常了。如下图:

1.6 等待上面的命令执行完后,代码就down下来了,如下图所示:

1.7 在上面截图的目录下,Git BASH设置一下用户信息,如下:

git config --local user.name "你的gitlab用户名"

git config --local user.email "你的gitlab邮箱"

1.8 确定进入到工程目录下,使用命令 : git remote add origin http://***.***.***.**/test/test-test-api  将本地仓库和远程仓库建立连接,其中http地址是在Gitlab上新建的项目地址。还未push代码时Gitlab如下截图所示:

 

1.9 将本地数据推送到远程仓库上,命令:

git push -u origin master

8和9的命令操作完成后,如下所示:

1.10 刷新gitlab页面,会发现代码已经推送上来。如下截图:

 

 

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值