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. 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. Disadvantages: requires upgrade to StarTeam 8.0 for one-time use.
- Migrate via some intermediate repository (e.g. StarTeam -> CVS -> Subversion). I haven't yet found any intermediary that will cooperate with 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. 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. 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. However I've discovered that you can cheat by copying starteam70.jar into the SVNImporter lib directory and renaming it starteam80.jar.
Having not used StarTeam I cannot speak to that -- but I think you've laid out some nice options.
https://netcodeman.blogspot.com/2011/01/converting-from-starteam-to-subversion.html?showComment=1506429228614#c7145074297097582572 may be of help in this discussion. I also know the SVN Importer has problems if the same revision has more than one label in StarTeam. Hope this helps.
I'm struggling to migrate StarTeam 8 to SVN using the Polarion kit. I'm getting:
[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
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?