博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SVN迁移到GIT且保留提交日志
阅读量:6622 次
发布时间:2019-06-25

本文共 1153 字,大约阅读时间需要 3 分钟。

  1. 首先,去下载一个
  2. 准备一个空的gitlab仓库
  3. 本地新建一个目录(GIT_CODE)用来装我们的源代码
  4. 在本地的svn目录下,按住shift键,然后空白处右击,选择在此处打开命令窗口(W)
  5. 然后开始进行svn账号与git账号映射,在命令窗口中输入:

    svn log -q | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2" = "$2" <"$2">"}' | sort -u > users.txt
  6. 这个时候,应该在我们的svn目录内生成了一个users.txt文件,内容大致是这样子的:

    dl.wang01 = dl.wang01 
    kw.hou01 = kw.hou01
    liuxia03 = liuxia03

    这里我们需要手动把=号右边的内容修改成git的名称以及对应的邮箱;这里只是提交日志的展示信息;=号左边的名称是提交过svn的用户名;

    这里需要注意一下:生成的用户名有可能不全,所以需要自己手动检测一下,如果SVN的提交用户没加全,后边在执行clone的时候,如果检测到该用户没有在users.txt中就会失败;

  7. users.txt拷贝到GIT_CODE目录内,然后使用Git Bash切换到GIT_CODE目录下
  8. 输入以下命令回车:

    git svn clone --stdlayout --no-metadata -A users.txt https://svn.您的svn地址.com/ ./// 如果只是想保留指定版本之后的日志,可以再加一个 -r 参数: -r 368594:HEADgit svn clone --stdlayout --no-metadata -A users.txt -r 368594:HEAD https://svn.您的svn地址.com/ ./// 关于如果查看SVN提交的版本,可以用小乌龟查看,右键-show log,然后 Revision 列就是我们提交的版本号// 当然,也可以全部保留日志,只是会从第一个版本,一条条的检索,如果提交记录很多,会花很长时间
  9. 然后就是慢长的等待
  10. 执行完后,再运行下面的命令:

    git remote add origin http://gitlab.您的git空仓库地址.gitgit push -u origin trunk:master
  11. 我自己执行完git remote add origin xxx.git后的操作都是用的(Simplicity and power in a beautiful Git GUI)

参考资料:,

转载地址:http://lojpo.baihongyu.com/

你可能感兴趣的文章
R 安装car包失败
查看>>
软工网络15Alpha阶段敏捷冲刺博客汇总
查看>>
仿写百度首页
查看>>
今日词话:点绛唇·感兴
查看>>
iOS面试题(二)
查看>>
UVA116 Unidirectional TSP 单向TSP
查看>>
React 新手随笔
查看>>
阿里云手动安装特定版本的nginx
查看>>
吉祥三宝--java版
查看>>
[转载] 七龙珠第一部——第036话 恐怖的玛斯鲁塔
查看>>
将HG版本库推送到Git服务器
查看>>
使用 github 做代码管理,知道这些就够了
查看>>
一、机器学习简介
查看>>
Linux 内核进程管理之进程ID【转】
查看>>
SQL Server检测是不是数字类型的函数(非ISNUMERIC)
查看>>
软件工程课程总结
查看>>
地平线发布兼具本地端抓拍与识别功能的嵌入式AI摄像机
查看>>
hdu 6126 Give out candies
查看>>
你的网站升级https了吗
查看>>
UWP Composition API - PullToRefresh
查看>>