将SVN存储库迁移到某个分布式VCS(Git或Mercurial)

时间:2012-05-26 12:30:01

标签: visual-studio-2010 git svn mercurial

my previous question我明白我必须将SVN存储库更改为分布式VCS。

所以,目前,我:

  • 拥有现有的SVN存储库
  • 使用Visual Studio 2010,
  • 将VisualSVN用于客户端和服务器。

我想:

  • 将客户端和服务器端转换为分布式VCS,
  • 保留历史,
  • 还为新的VCS提供了一个方便的Visual Studio插件。

我的问题:

  • 最好使用哪种VCS?
  • 如何将存储库从SVN转换为另一个VCS?
  • 在客户端,我可能只是“重新检查”使用新的VCS插件?

1 个答案:

答案 0 :(得分:4)

我通过SVN从集中式VCS(Team Foundation Server)过渡到Mercurial,我有积极的经验。所以我想这适用于你的情况。

hg convert可以将您的SVN存储库转换为Mercurial存储库,保留历史记录和分支(前提是您坚持使用SVN中常用的分支/标记布局)。

TortoiseHg提供了Mercurial功能与Windows资源管理器的完美集成,以及DAG渲染器,源代码树浏览和注释/指责工具等可视化工具。同时,TortoiseHg保留了命令行hg程序,因此您可以自由地混合GUI和CLI。

VisualHG基于TortoiseHg,将Mercurial存储库支持集成到Visual Studio 2008/2010中,在解决方案资源管理器中进行更改时添加,删除和重命名解决方案文件。

这套工具为大多数中型到大型项目提供了很好的支持。但是,如果您的项目非常大,或者它包含大量(几十兆字节)二进制文件(例如,媒体),或者您计划在源代码控制下定期放置构建的二进制文件,则可能会导致Mercurial难以使用。 / p>

在这种情况下,您可能希望使用其他工具,例如Mercurial子存储库和largefiles扩展,或考虑使用其他VCS(Git)。

相关问题