![]() |
Telelogic Rhapsody (steve huntington) | ![]() |
Topic Title: Let's share CM Integration Experiences Topic Summary: Created On: 19-Sep-2005 14:33 Status: Read Only |
Linear : Threading : Single : Branch |
![]() |
![]()
|
![]() |
|
We're having to integrate Rhapsody with Subversion via custom scripts.
Rhapsody behaves strangely and inconsistently when adding a multi-level subtree to archive: if the operation is invoked from the browser right-click - it tries to add the tip of the tree to the archive before adding the top of the tree. Subversion doesn't like this. If the operation is invoked from the configuration items dialogue it traverses down the tree. It appears this part of the tool has not been implemented according to a specification. Any similar experiences / solutions? ------------------------- ----------------------- Matthew Thomas Panasonic Manufacturing UK Ltd |
|
![]() |
|
![]() |
|
We built an entire SCM system using SVN for our project, but did not try and integrate SVN directly into Rhapsody. Instead, we do all of our SCM activities outside of Rhapsody and then open the projects from within Rhapsody.
We did some things we are told are a bit unique such as having a large number of small projects and making our SCM unit the entire project, rather than just a package. This largely avoids complex diff-merge situations and allows for more frequent releases and nightly builds. |
|
![]() |
|
![]() |
|
We are using Subversion too, but not from within Rhapsody, but via the "TortoiseSVN" shell. When two files are to be compared/merged in Subversion, the "real" file and a temporary file is used as input to the diff/merge tool. The DIffMerge tool that comes with Rhapsody, expects the two files to have the same, valid extension (eg. sbs) so we are invoking our own little DOS application that renames the input files, that in turn invokes DiffMerge.exe. After all, DiffMerge.exe seems to be the most usefull diff/merge tool, when working with Rhapsody projects.
Has anyone found another way to accomplish this? Another thing... Are we the only ones that are being "affected" WeakCGTime and StriongCGTime? ------------------------- Jesper Gissel Johnson Controls Denmark, Marine Controls |
|
![]() |
|
![]() |
|
Since our target environment is Linux, we do all of our SCM work on the Linux side. This makes automation considerably easier overall.
We try and avoid using diff-merge whenever possible. Our engineers have found that it is hard and error prone to use. Instead, we have moved to having a large number of smaller projects and make heavy use of external references between projects to bring in the interfaces, types and base classes we need from other projects. For the most part, this allows one and perhaps two developers to work on a project at the same time to avoid significant collisions. While we identified a number of issues with the product in the early going, we have been able to make this approach work on a large scale basis for our project. |
|
![]() |
|
![]() |
|
We used ClearCase and found that it worked very well. Mostly check-out and check-in were done from within Rhapsody using the integration, though sometimes for large changes we did them externally.
We built scripts that used the list of files from Rhapsody and then identified the ClearCase version number for each file, which was the list included in the VDD. On the ...CGTime question, we generally worked on the ClearCase drive, so any non-checked-out files were read-only, so no problems with CGTime. If a file had been checked-out and changed, the changes to CGTime just complicated looking at diffs (usually using the ClearCase diff), but was only a minor irritation. |
|
![]() |
|
![]() |
|
On the CGTime issue, we were also frustrated by this in conjunction with CVS diff for quite a while. However, there is a model property that controls whether these lines are put into the model files. If the property CG->General->IncrementalCodeGenAcrossSession is cleared then the CG lines are removed. We did this, and subsequent updates and merges have been much easier.
A side-effect of clearing the property is that all code is regenerated at the start of each session (I think - we haven't quite got to this stage in the project yet), so I guess there's a trade-off decision to be made. |
|
![]() |
|
![]() |
|
The scripts we wrote provide seamless integration and have been in use through-out one multi-user multi-site project life-cycle. It works very well (although if project requirements don't dictate SVN we still prefer StarTeam). We also use Tortoise but nothing beats being able to make CM actions in the environment.
We did a Webex with I-Logix and are awaiting ideas on how we might share this with the customer community... but in the meantime we'd like to gauge level of interest??? On the CG->General->IncrementalCodeGenAcrossSession issue, we ensure this is set according to our generic requirements in the site.prp file. Stick these lines in it: Subject CG Metaclass General Property IncrementalCodeGenAcrossSession Bool "False" end end Indeed, why is this not the default for Rhapsody? ------------------------- ----------------------- Matthew Thomas Panasonic Manufacturing UK Ltd |
|
![]() |
|
![]() |
|
We're interested!
|
|
![]() |
|
![]() |
|
We're using MKS Source Intergrity using the SCC interface and I think that the CM support of Rhapsody could be improved in a lot of ways.
With Rhapsody 7.1 we can't even use MKS at all because Rhapsody always crashs if you try to fetch an element out of the CM system (an error call was made btw). I think it's quite hard to find elements which are checked out and are modified, a filter option would really help here, particularly in big projects. Another improvement would be if there were buttons or hotkeys for checking-in/out,fetch... using the context menu/submenu is somewhat circumstantial. |
|
![]() |
Telelogic Rhapsody
» Rhapsody Category » Rhapsody
»
Let's share CM Integration Experiences
|
![]() |
FuseTalk Standard Edition v3.2 - © 1999-2009 FuseTalk Inc. All rights reserved.