Multiple streams in one RTC workspace
10 answers
streams, yes. In particular, each component in the workspace can have a
different stream as its current flow target. In addition, you can
declare multiple streams as flow targets for a single component.
Cheers,
Geoff
On 3/1/2012 3:09 PM, mickey_roash wrote:
Hi ,
is their RTC limitation to have single RTC workspace with multiple
streams each one mapped to his repository workspace , streams can
be from different configuration (product release version) ?
Thanks,
Mickey
If you are asking whether a single workspace can flow with multiple
streams, yes. In particular, each component in the workspace can have a
different stream as its current flow target. In addition, you can
declare multiple streams as flow targets for a single component.
Cheers,
Geoff
On 3/1/2012 3:09 PM, mickey_roash wrote:
Hi ,
is their RTC limitation to have single RTC workspace with multiple
streams each one mapped to his repository workspace , streams can
be from different configuration (product release version) ?
Thanks,
Mickey
I mean RTC workspace is where RTC eclipse client prompt for workspace in the start-up.
can I have in one RTC Eclipse client workspace load private repository for stream 1.x map to his flow
steam 2.x map to his flow ?
stream 1.x and 2.x are from the same product but different version
I heard from developers that are working with RTC CM from a long time
that the beast practice to work with each stream configuration against one RTC Eclipse client workspace ,but they did not know to give me the reason .
Is that true ?
Thanks ,
Mickey
can I have in one RTC Eclipse client workspace load private repository for stream 1.x map to his flow
steam 2.x map to his flow ?
stream 1.x and 2.x are from the same product but different version
I heard from developers that are working with RTC CM from a long time
that the beast practice to work with each stream configuration against one RTC Eclipse client workspace ,but they did not know to give me the reason .
You can load multiple repository workspaces into a single Eclipse workspace. RTC handles that quite well. The restriction that you have to watch out for is that the you can't load the same Eclipse project from two different repository workspaces.
If the repository workspaces that you want to load flow with streams that represent different products, you will likely be fine because the Eclipse projects in the two repository workspaces are less likely to overlap.
If the repository workspaces that you want to load flow with streams that represent different versions of the same product (which is your situation), then the repository workspaces will likely contain different versions of the same Eclipse projects, and loading them into the same Eclipse workspace is probably not feasible.
When I have had to work on two different versions of the same product, I have created a separate Eclipse workspace for each product version.
--
David Olsen | IBM Rational | Beaverton, Oregon
can I have in one RTC Eclipse client workspace load private repository for stream 1.x map to his flow
steam 2.x map to his flow ?
stream 1.x and 2.x are from the same product but different version
I heard from developers that are working with RTC CM from a long time
that the beast practice to work with each stream configuration against one RTC Eclipse client workspace ,but they did not know to give me the reason .
You can load multiple repository workspaces into a single Eclipse workspace. RTC handles that quite well. The restriction that you have to watch out for is that the you can't load the same Eclipse project from two different repository workspaces.
If the repository workspaces that you want to load flow with streams that represent different products, you will likely be fine because the Eclipse projects in the two repository workspaces are less likely to overlap.
If the repository workspaces that you want to load flow with streams that represent different versions of the same product (which is your situation), then the repository workspaces will likely contain different versions of the same Eclipse projects, and loading them into the same Eclipse workspace is probably not feasible.
When I have had to work on two different versions of the same product, I have created a separate Eclipse workspace for each product version.
--
David Olsen | IBM Rational | Beaverton, Oregon
Thanks David ,that clarify this issue .
assume I can workaround the eclipse projects issue by rename the "name" property in the .project file ,so I have no reason to be concern about any limitation, is that correct ?
Thanks,
Mickey
assume I can workaround the eclipse projects issue by rename the
"name" property in the .project file ,so I have no reason
to be concern about any limitation, is that correct ?
I have never tried that, so I can't say whether or not it would work.
You should try it out on a small test project and see what happens.
--
David Olsen
IBM Rational
Beaverton, Oregon
name clashes, but if these are just two versions of the same project,
then you don't want to rename them ... in that case, David's approach is
best ... use different Eclipse workspaces.
Also note that this limitation on having two different versions of the
same project loaded at the same time is just a limitation of the Eclipse
client (RTC is more than happy to load as many versions of the same
project into the file system as you want). In particular, you can use
the RTC command line to do so. Or another way to say it is, this would
be a limitation in Eclipse no matter what version control system you are
using. The reason of course is that Eclipse uses the "name" of the
project to identify the project for a lot of its operations, and if you
had two projects with the same name in the same Eclipse workspace, it
wouldn't know which project to apply the operation to. I have argued in
the past that Eclipse should use some UUID to identify the projects, and
not the "name" ... but that's an Eclipse enhancement, and therefore a
thread for a different forum (:-).
Cheers,
Geoff
On 3/2/2012 2:24 PM, mickey_roash wrote:
dolsenwrote:
can I have in one RTC Eclipse client workspace load private
repository for stream 1.x map to his flow
steam 2.x map to his flow ?
stream 1.x and 2.x are from the same product but different version
I heard from developers that are working with RTC CM from a long
time
that the beast practice to work with each stream configuration
against one RTC Eclipse client workspace ,but they did not know to
give me the reason .
You can load multiple repository workspaces into a single Eclipse
workspace. RTC handles that quite well. The restriction that you
have to watch out for is that the you can't load the same Eclipse
project from two different repository workspaces.
If the repository workspaces that you want to load flow with streams
that represent different products, you will likely be fine because
the Eclipse projects in the two repository workspaces are less likely
to overlap.
If the repository workspaces that you want to load flow with streams
that represent different versions of the same product (which is your
situation), then the repository workspaces will likely contain
different versions of the same Eclipse projects, and loading them
into the same Eclipse workspace is probably not feasible.
When I have had to work on two different versions of the same product,
I have created a separate Eclipse workspace for each product version.
--
David Olsen | IBM Rational | Beaverton, Oregon
Thanks David ,that clarify this issue .
assume I can workaround the eclipse projects issue by rename the
"name" property in the .project file ,so I have no reason
to be concern about any limitation, is that correct ?
Thanks,
Mickey
I have several projects works with the described configuration.
The problem is that from time to time one or some components are marked as "unloaded" even if it is loaded.
To handle it you must load again, and might even loose data since override issue.
How can we handle it and load several repository workspaces into one Eclipse workspace.
Note that there is no conflict with project names.
At all of my previous companies we used different SCM tools (CVS, Subversion, Perforce, etc). I’ll use my previous company as an example. We were a vendor company shipping a web app and we used Perforce for our SCM needs. At any one time I could be developing on 4-5 different branches/versions of the same product (most recent released version – 1 major release, most recent released version, current alpha/beta version, next planned release, next planned release after that).
In my eclipse workspace I would have 5 different eclipse projects:
ProductReleased1.0 (most recent – 1)
ProductReleased1.1 (most recent)
ProductCurrentBeta1.2
ProductCurrentAlpha1.3
ProductFarOut2.0
In SCM, these would all be different branches – 1.0, 1.1, 1.2, 1.3, 2.0 (doesn’t really matter for this example which branches these branches were cut from).
In eclipse using the Perforce eclipse plugin I would have each of those eclipse project matched with a different branch in Perforce. I could work on the same file across all 5 branches if I needed to (and sometimes I did – as the look & feel of the product (a web app) might be completely different in each branch, so doing the same thing doesn’t necessarily translate to copying the code verbatim from 1 branch to another. Lots of changes had to be “re-made” rather than merged/copied from branch to branch due to changes in the application from branch to branch.
Furthermore I have also tried to get around this by first opening up the .project file of the current eclipse project and then changing its name – figuring if I do that then I can load one stream of a project and then have them side-by-side. Once doing that, however, eclipse gets totally hosed (something to do with the RTC plugin I assume). Eclipse does change the name of the project to what I changed it to in the .project file, but then it re-creates the original eclipse project based on the component name. Some of the content from RTC goes into each project area and then I get all kinds of eclipse errors. Once I get into this situation it usually takes me about a half hour to clean it up so that I can work again. I have to close down eclipse and manually move files around, delete folders, etc, before I can bring eclipse back up to the way I had it before I made the change to the .project file. The same situation happens if I go into the RTC web interface, download the .project file for a component, change its name to something other than the name of the component, and then check it back in via the web interface. Once I do that, if I go into eclipse and then load that component, eclipse gets messed up just like I explained. I have to go back to the web interface, check out .project, change the name back, & then re-check it in before eclipse can fix itself.
What all of this means is that it seems there is a very strict dependency on the eclipse project name and the RTC component name in the project area, which seems to be a problem to me. What would happen if 2 components from different RTC project areas had the same name and I needed to work on both of them at once? My guess is I would get this clash again and I would only be able to work on one of these at a time.
The solution of having to use multiple eclipse workspaces to manage this kind of scenario is not an option in my opinion for the following reasons:
1. From purely a productivity standpoint this is not a good option – you have to run multiple instances of eclipse at the same time and switch back & forth between them. If I wanted to do that I would use Notepad++ on each of the files (or vi for that matter).
2. Productivity (again) – One of the main points in having the 2 projects in the same workspace is so you can use the compare editor against the same file in 2 different projects. If I’ve made some changes on branch 1.0 & branch 1.1, I can compare my local changes to the same file in each branch against each other.
3. Performance – Most developer machines here aren’t good, and have a hard enough time running 1 instance of eclipse, along with all the other things we have (WebLogic, WebLogic portal, etc).
4. Customization – All of your eclipse settings (code formatting, editor syntax highlighting, import order, save actions, RAM/RTC configuration, etc) are stored within the eclipse workspace. If you start having to use multiple workspaces then you need to set up all of your settings for each workspace. There is a preference import/export in eclipse, but it doesn’t export half of what you want (especially if you’ve customized settings for lots of other eclipse plugins that you’ve downloaded). I've been there & done that - having to create multiple eclipse workspaces over & over is a pain. This is also especially a pain once you decide to upgrade your version of eclipse.
I guess I just don't understand why there is such a strong tie between the name in the .project file of a project area and the name of the component in rtc. Why should there be any tie?
Comments
Second that completely. Seems odd RTC does not allow user to choose an alternate name for the project under which it loads the source code to resolve a name a clash. I believe a large number of developers need to develop multiple versions of a product simultaneously. So this has a big impact.
Ok, I found a way to have projects with different names created when there is name clash between components of different streams that you try to load into the same eclipse workspace.
That trick only works if you don't check in your .project files into source control - if you do then eclipse gets totally hosed after doing that. In our projects we have to check in the .project file, as we have added a bunch of natures/buildCommands that we want everyone in the team to be able to use.
But why can't you perform it if there is no ".project" conflicts?
The case that I have described is the following:
load several repository workspaces into one Eclipse workspace.
Note that there is no conflict with project names.
I looks that it is working, but from time to time you find out the when you open the RTC client some of the repository workspaces (at the pending changes view) seems as "unloaded", which is not the case.
Comments
Your case & my case are different - there are .project conflicts. There are several repository workspaces where the .project files in them have the same name, which causes a clash in eclipse. If I change the name of the project in the .project file to something other than the name of the RTC component, then the eclipse RTC plugin gets hosed.