从Visual Sourcesafe迁移到Mercurial

Dav*_*fal 19 migration mercurial dvcs visual-sourcesafe

将Visual Sourcesafe存储库移动到Mercurial的最佳方法是什么(我有兴趣保留所有历史记录)?

ret*_*ile 14

虽然我没有进行那种特殊的转换,但我已经使用(IIRC)这个脚本从VSS转到了SVN .您可能想要查看裁缝并搜索vss2hg.还要记住,经历像vss2svn + svn2hg或类似的中间步骤可能是有意义的.

我给出的主要建议是:编写转换脚本,以便您可以轻松地重新运行它.这将让你每晚从VSS到Hg进行转换,并确保在你触发它之前一切都正确转换.


tro*_*foe 13

我是vss2hg.pl脚本的作者,并使用它将许多项目从VSS移动到Mercurial.它有一两个小错误,其中一些注释没有完全转换,但我还没有看到任何其他问题.它转换完整的历史记录并解决VSS的问题,其中用户的PC时钟可以影响看起来发生变化的顺序.

此处提供了该脚本的一个版本.


Edm*_*und 6

我从这里使用了vss2hg.pl脚本.它是一个Perl脚本,因此您需要先安装ActivePerl.

它工作得很好,但我遇到了日期问题.事实证明,该脚本支持三种日期格式.默认情况下,它设置为英国日期格式(在第547行).其他两种日期格式在代码中注释掉.启用美国日期格式后,脚本转换了我的SourceSafe数据库没有问题.

  • 我对脚本做了一些修改.你可以[这里]下载它(http://edmundv.home.xs4all.nl/sw/vss2hg.pl). (2认同)

Mar*_*ler 5

Mercurial wiki有这个页面,可能很感兴趣:https://www.mercurial-scm.org/wiki/SourceSafeConversion.我从未使用过Visual source safe,所以我没有任何个人经验.

我还发现了PatrickMézard关于这个主题的邮件,不幸的是他写道VSS转换器很难.他还谈到首先转换为Subversion,然后从Subversion转换为Mercurial.我想这意味着有VSS - > SVN在那里转换.你可以自己谷歌.