It's all about the answers!

Ask a question

How to move RTC project areas from one repository to another repository server ?

Yi-Hung Lee (123) | asked Nov 13 '14, 8:28 p.m.
Currently, our users need to move parts of their project areas from one repository to another connected repository.

Is there is a simply to do this ? 

2 answers

permanent link
sam detweiler (12.5k6195201) | answered Nov 13 '14, 8:52 p.m.
there is no way to move/copy a project one one server to another.  this is a long standing requirement.

a coworker and I built some utilities for a company we worked for early in the year. it was about 6 person months of effort, and still took a lot of energy to execute the copy (team moved from 3.0.1 to 4.0.3.
my part copied all the non-workitem data, plans, streams, categories, teams, iterations, etc.
we did export/import for workitems,
then his utility did all the fixup of links, attachments, approvals, comments, mentions, etc, to point to the correct workitems.

Yi-Hung Lee commented Nov 13 '14, 10:36 p.m.

Dear Sam,

Thank your information.

Does this mean, we had manually:

    1. Configure new project areas as existed project areas (e.g. plans, categories, teams, iterations etc)
    2. Export / import work-item one by one
    3. Load stream, change flow target and deliver to new repository. For last version only (right ?)

But how could we do:

    1. Move revision history of files in streams ?
    2. Move snapshot / baseline ?

Also need to confirm:

    1. After import work items into new repository and use your utility, is the change set included ?

sam detweiler commented Nov 14 '14, 6:53 a.m.

see my answer below, too big for a 'comment'

permanent link
sam detweiler (12.5k6195201) | answered Nov 14 '14, 6:53 a.m.
for source code, as along as the two systems are at the same level, you can use Distributed SCM, described here,
to copy streams and workspaces between servers.  This will retain all your history and change sets.   You  will NOT get snapshots, but WILL get baselines.

once enabled, in the server ccm admin properties, you can right click on a workspace or stream and say Duplicate and select a different system.
note that YOU must take action to insure the users of changesets are mapped corretly between the two systems. all described in the referenced document above)

my utility did the copy of the workspaces in an automated way, because we had so many to copy. (over 300 workspaces). Make sure you copy streams before workspaces and then edit each stream and workspace to make sure its flow targets point to the correct item on the new system

correct. 1 and 2 are manual.

use workitem export in eclipse to get  the workitem content and import to load them into the new system. Note that each workitem references info that you need to have setup before the import.  iteration names, workitem categories, and teams, releases, people, ..

note that you cannot copy attachments or approvals. and the description and comment content about attachments, workitems, people (if the ids are different), are not corrected to the new item numbers, etc.

We also had trouble with the correction of links between workitems and decided to do our own correction of that info. We wanted a very clean copy..  the affected team was working on old system on Friday and needed to be working on the new system on Monday as if nothing had changed. 

note: All the workitem numbers WILL change.

also, we did NOT correct the workitem references to changesets. The team told us they rarely needed to go back thru the workitem link to the actual source.. and could use the workspace search for changesets from the comment if required.

Your answer

Register or to post your answer.