views:

18

answers:

2

We had a CVS tree cvsrootv6 which uses Java 1.4 and Websphere 6.0. Now because we are upgrading our systems we copied the whole CVS tree i.e cvsrootv6 and make a new independent tree cvsrootv7 for Java1.6 and Websphere 7.0.

While having cvsrootv6 tree in production we started resolving some versioning issues with cvsrootv7. At the same time our developers did some changes in various files of cvsrootv6. Now we want the changes in cvsrootv6 to be reflected in cvsrootv7.

Now there will be 4 types of files corresponding to cvsrootv6 and cvsrootv7 1) Files changed in cvsrootv6 but no change in cvsrootv7 2) Files with no change in cvsroot6 but with come change in cvsroot7 3) Files with some change in both cvsroot6 and cvsroot7 4) Files with no change in either of the tree i.e cvsrootv6 and cvsrootv7

Can somebody guide us if it can be done automatically. I mean can we write some kind of scripts for the automation process or there is no option to do it automatically. Please let me know if problem is not clear to you or u have any questions. Thanks..

A: 

Hi,

Without a common parent the versioning system would not know how to compute the differences and any code part would be subject to conflicts (just like having an empty project, branching from the start and then trying to merge, everything would be a difference).

I recommend using a folder compare tool like Araxis Merge and go through the whole code. Human decisions are mandatory, but it will be fast enough because the tool will guide you.

Hope this helps you, Alin

Alin Purcaru
A: 

I hope you tagged when you split off cvsroot7, because in that case you've got comparable change sets (cvsroot6 cvsroot7-tag to tip, cvsroot7 start to tip). If you can't, you may be able to use the time.

One way that comes to mind: tag cvsroot7, overwrite the programs with an export of cvsroot6, commit that, then merge the changes from cvsroot initial version to the tag you just made into the cvsroot7 tip.

David Thornley