I'm currently maintaining a CVS repository for source control. There is a push afoot to move to StarTeam. It has already been purchased and is a corporate standard for most projects. I was told by the corporate owners of the StarTeam servers that there is no known way to do a complete migration of our current CVS repository to StarTeam. We have been advised to do a checkout of the latest version and import that into StarTeam.
I would really prefer to keep all of my version history and not have to choose between simply losing all of the data or maintaining my CVS repository indefinitely.
Has anybody had any luck doing this? Any recommended tools or processes? Or am I just wasting my time and I should just migrate and cut my losses?
UPDATE: The official response from Borland is that this is definitely doable, but not with the boxed software. I can purchase services from Borland to help me accomplish this.
I wonder why a "professional" tool does not provide any means to import from well known legacy systems...
Although it may sound queer at first, i would recommend converting the cvs repos to subversion ( using e.g. cvs2svn, offered by tigris.org ), and then creating your own script to update from the subversion repos and commit into the starteam repository, provided it does offer an api or an command line client.
The advantage is that subversion supports nicely things like omitting branches or directories, and offer access via an api, which cvs does not.
Also, the documentation on subversion is quite extensive. ( example on using the subversion api from python
Good luck!
Here is a document that talks about importing PVCS or SourceSafe repositories into StarTeam. Though not specifically addressing CVS it may give you some ideas on how something like this could be accomplished. There are also some comments at the bottom of the article that look helpful as well.
http://dn.codegear.com/article/33011
I also found an old-school article from before Borland bought StarTeam that talks about using the command line interface to move a CVS repository into StarTeam. Could be something to try:
http://www.foxdata.com/starteam/faq/how_to_migrate_cvs_archives_to_starteam.htm
There are API's provided by Borland for scripting or programmatically interacting with the StarTeam server and Repositories.
I think the real answer here is that while it can be done, there is not an easy way to do this. Borland will be happy to help you do it, if you engage their services group, for a fee.
来源:https://stackoverflow.com/questions/219401/is-there-an-easy-way-to-do-a-complete-migration-from-cvs-to-starteam