检出svn库到本地git化 推送至gitlab

 
将代码从SVN中迁移到Git服务器中:
 
在迁移的时候, 请先冻结了svn, 并告诉所有小伙伴们禁止在svn上提交代码.

 

迁移步骤:

1.检出svn库

svn co http://localhost:8080/Test  (Test为案例库,http://localhost:8080/Test为案例库地址)
 
2.检索所有SVN提交者的列表
 
SVN只是列出每个提交的用户名。Git的提交有更丰富的数据,但最简单的是,提交作者需要列出一个名字和电子邮件。默认情况下,该git-svn工具将仅在作者和电子邮件字段中列出SVN用户名。但是,通过一些工作,您可以创建一个所有SVN用户的列表,以及它们对应的Git名称和电子邮件的列表。git-svn可以使用此列表将普通svn用户名转换为正确的Git提交者。 
1)cd Test
2)执行:
svn log -q | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2" = "$2" <"$2">"}' | sort -u > authors-transform.txt 
 
这将抓取所有的日志消息,拔出用户名,消除任何重复的用户名,排序用户名并将其放入“authors-transform.txt”文件中。现在编辑文件中的每一行。例如,转换:
wlh = wlh <wlh>
进入:
wlh = wlh <xxx@qq.com>
 
3.使用git-svn克隆Subversion资源库
git svn clone http://localhost:8080/Test --authors-file=authors-transform.txt --no-metadata testgitsvn
 
4.添加远程
cd testgitsvn
git remote add origin git@****:gitTest/xxxx.git
注:需先在gitlab,新建project:newgit.git

  

5.push到gitlab
git push -u origin master
 
 
posted @ 2018-09-20 18:32  Krystal_*^*  Views(618)  Comments(0)    收藏  举报