简体   繁体   English

从StarTeam 5迁移到Subversion的策略?

[英]Strategy to migrate from StarTeam 5 to Subversion?

I need to migrate a large project from StarTeam 5 to Subversion, and I'd like to keep snapshots of (at least) 5-10 of the major releases. 我需要将一个大项目从StarTeam 5迁移到Subversion,我想保留(至少)5-10个主要版本的快照。 I've considered the following: 我考虑过以下几点:

  • Manual or scripted export/import of each snapshot. 手动或脚本导出/导入每个快照。 Advantages: straightforward, easy to select labeled/dated versions. 优点:直观,易于选择标记/日期版本。 Disadvantages: time-consuming, does not preserve comments. 缺点:耗时,不保留评论。
  • Polarion offers what seems to be the perfect tool in svnimporter, but it requires a .jar file from StarTeam 8.0 that is not present in StarTeam 5. Advantages: automated, complete. Polarion提供了似乎是svnimporter中的完美工具,但它需要StarTeam 8.0中的.jar文件,StarTeam 5中不存在。优点:自动化,完整。 Disadvantages: requires upgrade to StarTeam 8.0 for one-time use. 缺点:需要升级到StarTeam 8.0一次性使用。
  • Migrate via some intermediate repository ( eg StarTeam -> CVS -> Subversion). 通过一些中间存储库迁移( 例如 StarTeam - > CVS - > Subversion)。 I haven't yet found any intermediary that will cooperate with StarTeam. 我还没有找到任何与StarTeam合作的中间人。
  • Migrate only the latest source. 仅迁移最新的源。 Advantages: simple, fast, encourages developers to invent new solutions rather than repeating history. 优点:简单,快速,鼓励开发人员发明新的解决方案,而不是重复历史。 Disadvantage: encourages developers to invent new solutions rather than repeating history. 缺点:鼓励开发人员发明新的解决方案,而不是重复历史。 :-) :-)

I'd appreciate any experiences or suggestions you might offer. 我很感激您提供的任何经验或建议。 Thank you. 谢谢。

You can run a Star Team server for an evaluation period (30 days?) without requiring additional licensing from Borland - this would give you plenty of time to run a few practice runs, and give you a complete, reliable solution. 您可以在评估期间(30天?)运行Star Team服务器,而无需Borland的额外许可 - 这将为您提供充足的时间来运行一些练习,并为您提供完整,可靠的解决方案。 Well worth the effort. 非常值得努力。

Also, don't underestimate the value of retaining your source history. 另外,不要低估保留源历史记录的价值。

Updated Nov 6: One project that I'm involved with has used the Polarion tool to migrate a single StarTeam project into SVN. 11月6日更新:我参与的一个项目使用Polarion工具将单个StarTeam项目迁移到SVN。 Took a little bit of work, but the end result is flawless. 做了一点工作,但最终的结果是完美的。 Well worth the time investment. 值得花时间投资。

Regarding the comments about StarTeam versions: yes, the Polarion SVNImporter tool does need starteam80.jar, and yes, the StarTeam SDK 2005 only has a file called starteam70.jar. 关于StarTeam版本的评论:是的,Polarion SVNImporter工具确实需要starteam80.jar,是的,StarTeam SDK 2005只有一个名为starteam70.jar的文件。 However I've discovered that you can cheat by copying starteam70.jar into the SVNImporter lib directory and renaming it starteam80.jar. 但是我发现你可以通过将starteam70.jar复制到SVNImporter lib目录并将其重命名为starteam80.jar来作弊。

Having not used StarTeam I cannot speak to that -- but I think you've laid out some nice options. 没有使用过StarTeam,我无法说话 - 但我认为你已经提出了一些不错的选择。

  1. Scripted import seems like it could be time consuming, not really get you everything, but at the same time, be a reliable way to get into svn and still preserve your release history. 脚本导入似乎可能耗费时间,并不能真正为您提供所有内容,但与此同时,成为进入svn并保留发布历史的可靠方式。
  2. What is the real downside of upgrading and throwing away the install after? 之后升级和丢弃安装的真正缺点是什么? Do you have to re-purchase the software? 你需要重新购买软件吗? Is it a tedious upgrade? 这是一次繁琐的升级吗? Barring that, it sounds like this may just be the best option. 除此之外,听起来这可能只是最好的选择。
  3. I would really stay away from this option. 我真的会远离这个选择。 cvs -> svn import is pretty shaky (really, it's a one-off thing, probably not that many individual people work on it enough to really care about making it perfect). cvs - > svn import是非常不稳定的(真的,这是一次性的事情,可能不是很多个人的工作就足以真正关心它的完美)。 Going from another SCM system to cvs, and THEN to svn sounds like a recipe for useless history data and frustration. 从另一个SCM系统转到cvs,然后转到svn听起来像是无用的历史数据和挫折的食谱。 :) I've only done it a couple of times, and really, the best part is once you're done, you're in svn and never touch cvs again. :)我只做了几次,而且真的,最好的部分是一旦你完成了,你在svn并且再也不会触摸cvs了。
  4. This option does really suck. 这个选项确实很糟糕。 You lose all your history.. can no longer blame other dev's for screwing things up.. On the upside though, it will absolutely work, if all else fails. 你失去了所有的历史......再也不能责怪其他开发人员搞砸了事情。但在好的方面,如果一切都失败了,它绝对会起作用。

I'm struggling to migrate StarTeam 8 to SVN using the Polarion kit. 我正在努力使用Polarion套件将StarTeam 8迁移到SVN。 I'm getting: 我越来越:

[main] DEBUG STProvider:80 - checkout ...relative/path/to/build.xml version:1.0 09:25:10,378 [main] DEBUG STProvider:80 - checkout ... relative / path / to / build.xml version:1.0 09:25:10,378

[main] INFO historyLogger:84 - EXCEPTION CAUGHT: java.lang.UnsatisfiedLinkError: com.starbase.util.NativeFileAccess.setLastModifiedAsLong(Ljava/lang/String;J)V [main] INFO historyLogger:84 - EXCEPTION CAUGHT:java.lang.UnsatisfiedLinkError:com.starbase.util.NativeFileAccess.setLastModifiedAsLong(Ljava / lang / String; J)V

and the target file exists, but I suspect that it's unable to resolve the relative path. 并且目标文件存在,但我怀疑它无法解析相对路径。 Do you know if there are properties (other than the ones in the config.properties file) that can be set to control this? 你知道是否有可以设置来控制它的属性(除了config.properties文件中的属性)?

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM