By Tim Ströbele
Polarion has actively supported the Subversion community since 2005. One major contribution has been a set of free Subversion tools, and in particular tools for migrating to Subversion from legacy third-party version control tools.
Among the SVN migration tools is one that will migrate data from MKS to Subversion: the mks2svn data migration utility. The Polarion Professional Services team has just released a new version of this tool.
New Features and Changes
- The new version adds support for the API method of interface to MKS (mksapi.jar required). So it now supports both CLI and API through a configuration option. This limits support to new versions of MKS a.k.a. “MKS 2009”.
- The old MKS to SVN tool version was single-project, single-repository. It was monolithic (flattens) in its treatment of sub-projects of the project being migrated. MKS added support for shared projects since Polarion’s original MKS to SVN migration tool was developed.
- The new version allows you to provide a list of projects to be migrated to their own SVN repositories ,and if they are shared, then it will provide external linking between SVN repositories at either file or project (SVN folder) level.
- Project Lifecycle metadata are preserved on all projects.
- Subproject Checkpoint data is uniquely preserved into tags and also coalesced within parent projects in tags to provide both parent and subproject unity which can be used as releases for either.
- Change Package support was added to the new version. MKS Change Packages are replicated into the Subversion repository as a tag folder using the Change Package name.
- Also new is Version pinning. Any file that was pinned to an older version from the current trunk version is now supported.
- All MKS metadata is replicated into Subversion as properties of the artifact to which it was attached.
- File types are not forced to a MIME type, but rather allow Subversion clients to provide native client handling.
Current Feature Overview
The mks2svn MKS to Subversion conversion tool now has these main features and capabilities:
- Supports MKS2009 and later
- Supports both API &/or CLI(si) to access the MKS repository (requires MKS client installation)
- Supports the generation of multiple subversion repositories from MKS projects with external linking.
- Supports the transformation of MKS “Change Packages” to SVN tags
- The transformation preserves revisions, authors, commit messages and dates of commits
- Transformation converts MKS branches to SVN branches
- Transformation converts MKS revision labels to SVN tags
- Logging (output to console, logging level) can be tuned in configuration file (using log4j configuration)
Known issues with the MKS to SVN migration tool
- Moved MKS Projects not predictable in all cases. MKS does not provide any details about to where to or from where a project might have been moved. In fact it provides no details that a project was moved at all. Enhance the issue.
- Very legacy MKS issues like old RCS paths and project naming changed over time and neither variant of the importer handles these issues very well.
- Performance statistics added but still needs more work for validation.
Info and Downloads
Many of our customers and prospects are still in the process of migrating their old repositories to Subversion. Polarion’s free Subversion migration tools
and Professional Services assistance
can help automate this process and address specific needs. If you need additional help with your Subversion migration please feel free to contact us here
If you’re not yet familiar with Polarion Software, you might be interested to know that our application lifecycle solutions can help you get more from Subversion than you ever imagined possible.
I encourage you to spend a few minutes to see what our Subversion-based solutions can do for you in areas like:
About the Author:
Tim Ströbele is Director of Professional Services at Polarion Software. He is based in Stuttgart, Germany.