将 Mercurial 存储库转换为子版本(SVN)

将 Mercurial 存储库转换为子版本(SVN)

这看上去似乎是一个非常奇怪的情况。

最初我们使用 subversion(SVN)进行版本控制...

然后我们转向 mercurial 并使用工具将我们之前的提交转换为 mercurial 形式。

现在我们想要回到 sub 版本,但是我们似乎找不到任何可以让我们保留 mercurial 提交的历史记录并将其保存为 subversion 形式的东西。

有人知道这是否可行/如何去做吗?

谢谢!!

答案1

首先,确保这就是你想要做的!阅读这篇关于为什么 DVCS 的理念可能比 Subversion 更好的优秀文章:

http://www.joelonsoftware.com/items/2010/03/17.html

我不知道您是否同意 Joel 的观点,但您应该考虑到,除了 Subversion 的“没有糟糕的 CVS”模型之外,还有更多现代的方法可以解决该问题。

问题在于分散的性质还是其运作方式的差异?

如果是前者,此页面有一些关于使用 Mercurial 和“单一中央存储库”的讨论。

http://hgbook.red-bean.com/read/collaborating-with-other-people.html

如果是后者,我希望大家再给它一些时间。你们最初移民的理由可能仍然有效。

不幸的是,我找不到任何关于人们从 Mercurial 迁移到 Subversion 的讨论。您可能需要将 Subversion 转储文件的等效项组合在一起(例如 cvs2svn 的输出)。

你应该和[电子邮件保护]

http://subversion.apache.org/mailing-lists.html

这可能是寻找建议(或甚至是脚本)以实现您想要的目标的最佳场所。

相关内容