转自:Joe(http://aidevjoe.github.io/2019/03/22/将 SVN 仓库转换成 Git 仓库/)
摘选核心内容
1、编写user.txt文件
Joe = Joe <aidevjoe@example.com>
Lisen = Lisen <Lisen@example.com>
Zl = Zl <Zl@example.com>
2、转换
git svn clone --stdlayout --no-metadata -A user.txt https://192.168.1.50/svn/Repo/ RepoDir
--stdlayout: 示你的项目在 SVN 中是常见的 “trunk/branches/tags” 目录结构,如果不是,那你需要使用 –tags, –branches, –trunk 参数(请通过 git svn help 自行了解)。
--no-metadata: 让原 SVN 项目日志中的内容更符合 Git 的格式规范,且去掉了 SVN ID、URL 此类无用信息。
-A user.txt: -A 为指定用户列表信息。user.txt 为用户列表信息的文件。如果 user.txt 不当前目录,可以改为具体路径,例如 -A /Users/joe/Desktop/user.txt 。
https://192.168.1.50/svn/Repo/: 表示 SVN 的仓库服务器地址。
RepoDir: 为目标目录,这将会在 RepoDir 新建一个 Git repo,并开始从 SVN 中拉取代码。
如果遇到以下错误
Author: VisualSVN Server not defined in userinfo.txt file
在 user.txt 文件里添加以下内容即可
VisualSVN Server = Visual SVN Server <admin@yourdomain.com>