SVN 项目迁址至 Gitlab 完整步骤

公司所有的项目都在 SVN 上,现在需要将 SVN 的项目迁移至 Gitlab 上面。如直接迁移,很简单,但是会丢失提交历史记录,这不是我们想要的;
我们要保留 SVN 的提交历史记录,并且一并迁移至 Gitlab 上面,能够快速的完成对接工作;

安装 git-svn

yum -y install git-svn 

导出 SVN 中所有的账号

svn log svn://ip:端口/Project -q | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2"="$2" <"$2"@qq.com>"}' | sort -u > ./svn2git.txt

注:我这里使用的是 @qq.com 邮箱,可自行更换,svn2git.txt 文件也可自行更换;

会生成一个 svn2git.txt 文件,里面可自行更改;如遇到 Author: payne not defined in 请注意,你是否动过里面的对应格式;

迁移语句:

git svn clone svn://ip:端口/Project --no-metadata --authors-file=svn2git.txt SCMBar
  • 参数–no-metadata表示阻止git导出SVN包含的一些无用信息
  • 参数–authors-file表示SVN账号映射到git账号文件,所有svn作者都要做映射

最后等待 Git 迁移完成

remote git 项目

git remote add origin <你的git项目地址>

推送项目

git push -u origin master

人已赞赏
运维笔记

postfix 报错 See "systemctl status postfix.service" and "journalctl -xe"

2020-2-25 21:41:35

运维笔记

如何在 CentOS 7 中安装字体

2017-8-23 12:24:21

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索