一、建立svn到git的用户映射关系
写在文件userinfo.txt中(每个用户都需要写上,否则会报错)
二、通过git svn clone克隆一个git版本库
把上面的userinfo.txt 拷贝到 新建好的准备克隆svn代码的git目录下,
然后执行 git svn clone命令克隆一个git版本库
git svn clone svn项目仓库地址(trunk上一级目录) --no-metadata --authors-file=userinfo.txt --trunk=trunk --tags=tags --branches=branches --no-minimize-url -r72:HEAD
- 参数–no-metadata表示阻止git导出SVN包含的一些无用信息
- 参数–authors-file表示SVN账号映射到git账号文件,所有svn作者都要做映射
- 参数–trunk表示主开发项目
- 参数–branches表示分支项目
- 参数-r表示版本 例如上述-r72:HEAD表示从之前svn项目的版本72以后的开始同步,包括内容和commit日志,如果要所有的svn记录都同步则改为-r2:HEAD(不过此时会比较耗时,因此建议按需设置)
敲完命令后会提示输入SSH信息,填写svn相关账号信息即可:
填写用户名:
填写密码:
确认后即可开始clone:
克隆完成后进入到克隆好的项目通过gitlog或者TortoiseGit即可查看所有同步过来的commit情况:
这样即完成了将svn管控项目转为git管控项目,如需推送到远程端即和普通本地git项目推送一样方式即可。
参考文章:https://blog.csdn.net/ouyang_peng/article/details/80372805