将 SVN 仓库迁移到 git

  1. 准备工作

需要准备的内容有:

如果在 CentOS 或 redhat :

  # sudo yum install git git-svn

或,如果在 ubuntu :

  # sudo apt-get install git git-svn
  # 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>
  1. 使用 git svn 初始化仓库
  # git svn clone [SVN 地址] -A authors-transform.txt
  1. 配置 git 仓库地址
  # git remote add origin [git 仓库地址]
  1. push 到 git 仓库

过程中可能提示输入用户名和密码。

  # git push origin --all

参考