有没有人成功地将 TFS 2008 历史导入新的 Mercurial 存储库?
迄今为止我发现的唯一可能的解决方案是使用tfs2svn转到 TFS -> svn -> hg ,然后使用转换扩展,但我还没有尝试过。
这是一篇关于将 TFS 转换为 Mercurial 的博客文章,来自转换了许多项目的人:http ://blog.eworldui.net/post/2010/03/16/Mercurial-Conversion-from-Team-Foundation-Server.aspx
我只是将一个简单的工具放在一起,使用 TF.exe 和 HG.exe 将单个分支的变更集从 TFS 同步到 Hg。
http://bitbucket.org/rojepp/tfstohg
更新: 该工具的 F# 端口比 C# 版本更稳定且资源占用更少:http: //bitbucket.org/rojepp/tfstohgfs/
最新版本的 SvnBridge 已更新以更好地支持使用 hg convert 命令。所以我们现在一直在使用 hg convert 和 SvnBridge,对于大多数项目来说,它一直运行良好。
我周末睡不着觉,也无法让 TFS->SVN->Hg 解决方案可靠地工作,所以我写了一个工具来做到这一点:Tfs2Hg
转换扩展不支持 TFS(从 Mercurial 2.0 开始)。
如果您可以先转换为 Subversion,那么这是一个不错的选择。
这并不罕见——当从 CVS 转换时,一些用户报告了更好的结果,他们首先使用其中一个高度调整的 CVS 到 SVN 转换器,然后从 SVN 转换到 Hg。所以不要因为走这条“弯路”而感到难过:-)
tfs2svn 或使用 Mercurial Convert 扩展直接通过SvnBridge进行转换。