加入新的团队,他们之前一直用 svn 而且每个人都用 vim 在开发机的自己的用户目录下面开发,这种原始社会的开发方式实在不能忍,于是将团队的开发方式转到 git-flow+vagrant,将 svn 项目转到 gitlab 中。

1.导出 SVN 项目的所有提交者

svn log -q | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2" = "$2" <"$2">"}' | sort -u > users.txt

修改一下对应的 gitlab 账号,类似于:

xm = 小明 <xm@xxx.com>
xl = 小刘 <xl@xxx.com>

2.Gitlab 上新建项目,比如叫 test 3.git svn clone 需要迁移的 svn 项目(确保已安装 git-svn)

git svn clone svn://svnurl.com/mongoose/trunk/xxxxxx --authors-file=users.txt --no-metadata test

4.添加 remote

 git remote add upstream git@gitlaburl.com:namespace/test.git

5.push 到 gitlab

 git push upstream --all

好了,so easy

转载请注明: 转载自Ryan 是菜鸟 | LNMP 技术栈笔记

如果觉得本篇文章对您十分有益,何不 打赏一下

谢谢打赏

本文链接地址: SVN 项目迁移到 Gitlab

知识共享许可协议 本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可