Question

I'm on the lookout for tools to migrate from ClearCase to SVN.

Ideally would like to get all history information, or as much as can be acquired.

Incremental merges would be very beneficial but isn't required.

Was it helpful?

Solution

This looks about the best. Polarion's business is SVN, so I guess they have a vested interest in making as many people as possible use it...

Oh, back up all your data before hand, do it on a test repository first, etc, etc.

OTHER TIPS

I experienced the same issue than Peter: the Polarion script was unable to proceed with large CleraCase VOBs and always ended up in a Java Heap Size out-of-memory error.

I also experienced another critical issue leading to corrupted data after import.

Polarion script is working that way:

  1. Use cleartool command to access ClearCase data
  2. Use its own algorithm to dump these data in SVN DUMP a flat file
  3. Use svnadmin to import the dump file in SVN

I managed to run the Polarion script on a smaller VOB. Everything was looking good (import completed successfully with no error message) but the SVN repository was not usable (no way checking it out, don't have the exact error message in mind) - tried several times, same result.

I understand the script is rebuilding a SVN DUMP file based on its own code, not on any SVN API. It was probably designed for a particular version of SVN (1.4, maybe 1.5?) and I was using SVN 1.6. The DUMP file format has maybe changed since, or the Polarion script doesn't handle correctly some side effects with particular ClearCase data. However at the end of the day it was just not working.

I would therefore strongly recommend using another solution, and probably build your own script based on cleartool and actual SVN API to avoid any data consistency issue.

The migration from clearcase is not an easy task. The polarion importer does a job to support you, however, the history and speed for large clearcase repositories is difficult to estimate.

The history will only import all files from main and will not take into account any directory versioning. The problem is that your files which will be placed into your tags have the latest name, if you renamed them. Also the importer will not migrate deleted files.

As the importer cannot use your config-specs, it will show only the changed files in branches, as clearcase uses lazy branching, which is fully different to svns branching mechanism.

Merge tracking is not supoorted by migration tool, as SVN supports it only from 1.5

Just another experience:

We went with "custom scripts" rather than the Polarion tool.
That way, we can:

  • use a dynamic view (quick for updates)
  • select exactly the branch we want to import
  • import only the versions with labels on it (avoid import a gazillon number of versions, whereas nobody will actually exploit that huge history)
  • import all versions between last label and LATEST (for a given branch)

We used the dynamic view for changing its config spec with all the label we are interesting to import to SVN.

Note: that fact that we are using UCM is a big help for export operations:

  • the branch are clearly identified (after their attached streams), and
  • the label is set on all the files of a given component (in Base ClearCase, a label can be set of a arbitrary number of files)

The last version of the Polarion tool is from 2006 and it just does not do the job with large CC vobs. In my case it always crashes with heap overrun, and even the largest java heap space is not enough to it. So it is no good for me.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top