首页 > 解决方案 > SVN2GIT 迁移,而 svn repo 仍在使用中

问题描述

我正在尝试整理概念证明,以将我们所有的 SVN 存储库迁移到 git。我在从 SVN 到 GIT 的初始迁移中取得了一些成功,并设法通过所有提交和分支来实现这一切。

我在初始提交上运行以下命令:

git svn clone https://dev-server:8000/svn/web/proj1/ --prefix=svn/ --trunk=/Trunk --branches=/Branches --tags=/Tags  --authors-file "C:\SVN2Git\authors.transform.txt" c:\SVN2Git\proj1

然后我在 powershell 中运行以下命令来转换分支:

git for-each-ref --format='%(refname)' refs/remotes | % { $_.Replace('refs/remotes/','') } | % { git branch "$_" "refs/remotes/$_"; git branch -r -d "$_"; }

这一切似乎都按预期工作,我有一个闪亮的新 GIT 存储库,所有分支都根据用户和时间等提交。

问题是人们仍在提交旧的 SVN 存储库,我需要每天运行一个命令来拉回他们所有的提交。如果我再次运行 git svn clone 代码,它似乎会获取额外的提交,但是我在 git repo 中看不到它们。

我努力了:

git rebase svn/trunk

它似乎更新了主分支,但是当我签入源树之类的东西时,它没有显示任何提交。

关于如何解决这个问题的任何建议?我已经读到您可以对每个修订进行手动下拉,但我宁愿不必为每个提交都这样做。

提前致谢。

标签: gitsvnmigrationsvn2git

解决方案


推荐阅读