将 SVN 仓库迁移到 git
- 准备工作
需要准备的内容有:
- 需要迁移的 SVN 地址和具有权限的账号
- 足够的硬盘空间
- 命令行中具有 git 和 git-svn 工具
如果在 CentOS 或 redhat :
# sudo yum install git git-svn
或,如果在 ubuntu :
# sudo apt-get install git git-svn
- 如果需要的话,还要准备一个
authors-transform.txt
文件
# svn log -q | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2" = "$2" <"$2">"}' | sort -u > authors-transform.txt
然后手动修改其中的作者信息,如将
jwilkins = jwilkins <jwilkins>
修改为:
jwilkins = John Albin Wilkins <johnalbin@example.com>
- 使用 git svn 初始化仓库
# git svn clone [SVN 地址] -A authors-transform.txt
- 配置 git 仓库地址
# git remote add origin [git 仓库地址]
- push 到 git 仓库
过程中可能提示输入用户名和密码。
# git push origin --all