从 svn 迁移到 github 企业而不丢失提交历史

Posted

技术标签:

【中文标题】从 svn 迁移到 github 企业而不丢失提交历史【英文标题】:Migrating from svn to github enterprise without loosing commit history 【发布时间】:2021-12-12 00:12:11 【问题描述】:

我们在办公室使用 SVN 已经有很长一段时间了,最​​近决定我们应该迁移到 GitHub 企业版,并且所有源代码都应该在那里维护。我们当前的 SVN 服务器是我们专用网络中的本地 Windows 2012 R2 服务器。我们已经在 GitHub 企业上维护了新项目,但这些项目很少,我们不能冒险丢失我们的提交历史和分支标签等。对于迁移,谷歌搜索带来了快速

git svn clone <svn-repository-url>

但这是不可能的,因为我们的 SVN 服务器位于公司防火墙后面,并且网络没有任何变化,Infosec 人员将允许服务器在公共互联网上可用。有没有其他方法可以将我们所有的项目迁移到 GitHub。将 SVN repo 导出为 .zip 或 .tar 然后将其上传到 GitHub 或任何其他可能的解决方案之类的东西将非常有用。

【问题讨论】:

【参考方案1】:

如果您对服务器具有 shell 访问权限,则可以在每个存储库上运行 svnadmin dump。它也适用于 Windows,而不仅仅是 linux。这在 svn book 中有详尽的解释。这并不难,但像往常一样有很多选择和可能性。

当转换为 git 时,我建议去掉无意义的分支,但这当然取决于你。

【讨论】:

以上是关于从 svn 迁移到 github 企业而不丢失提交历史的主要内容,如果未能解决你的问题,请参考以下文章

svn迁移到git

还在使用 SVN 管理代码的企业,快速轻松迁移到 Git

代码版本管理从svn迁移到git

SVN到Git的一键迁移脚本(保留所有分支、Tag及提交记录)

在 SVN 中不提交行)而不从文件中删除它们?

SVN迁移GIT(GITEE)指南