git svn 在使用修订范围时不更新所有分支

git svn not updating all branches when using revision range

我在 git svn 中看到一些非常奇怪的行为,在传递修订范围时它没有更新所有分支。

我的存储库很大,所以我正在转换 5k 修订块。命令示例如下。

git svn clone --trunk=/trunk --branches=/branches --authors-file=authors.txt -r 75000:80000 https://svn.prod.oldcompany.com/repo/backend backend_conversion
git svn fetch 80000:85000
git svn fetch 85000:90000
git svn fetch 90000:HEAD

我的大部分分支确实转换了所有历史记录和修订版,但例如主干仅选择第一个修订范围(svn 中的主干,git 中的主干)。缺少所有其他修订。我已经尝试重置 HEAD 并重新同步,但 git svn 不会在主干上获取后来的修订。我开始认为这是因为我们曾经在 /branches/master 下的 svn 中有一个主分支,但我不明白为什么它会因为分支和主干的引用差异而真正产生影响.关于为什么的任何想法?

对于以后查看此内容的任何人:删除 git svn 并仅使用 subgit 来转换您的存储库。更容易、更快,并且项目背后的工程团队非常有帮助,您可以免费进行一次性转换。付费的镜像功能真的很棒,如果你确实需要做镜像的话也是值得的。