It's all about the answers!

Ask a question

Working with a shared sandbox


Yaron Norani (47267065) | asked Oct 25 '11, 10:18 a.m.
Hello,
I have a project that is multi- platform developed.

I Thought to create a repository workspace for a user from Linux and locate the sandbox at a shared storage, such as NetApp.

then development done by:

1. Open Eclipse from Linux and use RTC.
Exit Eclipse wokspace (to avoid lock)
2. Open Eclipse from windows (same eclipse workspace and sandbox).

Is it supported?

If not, what is the best practice for multi- platform development?

Thanks,

Yaron

16 answers



permanent link
Geoffrey Clemm (30.1k33035) | answered Oct 25 '11, 11:43 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
You could do that, but it would be simpler just to have two different
repository workspaces, each with their own sandbox. Then you don't have
to shut one down in order to work on the other platform (and don't need
to mess with shared storage).

Cheers,
Geoff


On 10/25/2011 10:23 AM, yaron wrote:
Hello,
I have a project that is multi- platform developed.

I Thought to create a repository workspace for a user from Linux and
locate the sandbox at a shared storage, such as NetApp.

then development done by:

1. Open Eclipse from Linux and use RTC.
Exit Eclipse wokspace (to avoid lock)
2. Open Eclipse from windows (same eclipse workspace and sandbox).

Is it supported?

If not, what is the best practice for multi- platform development?

Thanks,

Yaron

permanent link
Yaron Norani (47267065) | answered Oct 27 '11, 6:23 a.m.
Hi,

A -
I have tried the following :
Create the sandbox from linux on shared storage.
Use same workspace from windows.
When using this sandbox from windows I have got some unexpected errors:
1. error message such as "not a known sandbox"
2. unresolved files from Linux did not appear as "unresolved" using the same sandbox from windows.

Do you know whether this configuration was tested?
I also suspect that there are unix/win "/" issues within the changeset that can cause to problems.

B -
I have adopted the 2 repositories solution - one for each platform.
I have tried the following:
Linux - change and create a changeset
Windows - Try to accept the changeset for mltiplatform development.
** you can not "accept" unless you "complete" the changeset from Linux.
So, the procedure for a user that should perform that activity becomes:
- change at Linux
- "complete" the changeset.
- go to windows and "accept"
- back to linux - and use a new changeset.

Please note that you'll create a new changeset each time you'll "switch" environment.
We will finish with lots of changesets that from the user perspective should be ONLY one chnageset.

Now, When you would like to "take" this change to other stream you'll need to "take" all those chnagesets.
__________________________________________

Is there a better solution for that scenario?
ClearCase solution was: Create dynamic view at Linux. mktag at windows --> start working.

Thanks,

Yaron

permanent link
Tim Mok (6.6k38) | answered Oct 27 '11, 9:08 a.m.
JAZZ DEVELOPER
You can suspend the change set and resume in the other workspace without closing it.

permanent link
Yaron Norani (47267065) | answered Oct 29 '11, 12:14 p.m.
Thanks for the response.
So, is this the reccomended solution for a multiplatform development?
User will have seperate workspaces, and share information using suspend?

If not,

What is the basic procedure for handling that scenario?

permanent link
Geoffrey Clemm (30.1k33035) | answered Oct 29 '11, 4:05 p.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
Yes, that would be the recommended solution.

Note that the flow is slightly smoother if you do the suspend from the
Eclipse workspace that currently holds the change set. But if you
forget to do so, you can do the suspend from any Eclipse workspace ...
when you return to the original Eclipse workspace, it will tell you to
"resync" the workspace ... that will apply the suspend to the original
file area.

Cheers,
Geoff

On 10/29/2011 12:23 PM, yaron wrote:
Thanks for the response.
So, is this the reccomended solution for a multiplatform development?
User will have seperate workspaces, and share information using
suspend?

If not,

What is the basic procedure for handling that scenario?

permanent link
Yaron Norani (47267065) | answered Nov 01 '11, 3:05 a.m.
Thanks,

I am not convinced that it will be a good solution.
Note that when "resync" the workspace the user may loose his all Unresolved ("temp") work.

Lets start over:
Use case is: user develops same software on both Linux and Windows environment.
What is the RTC configuration that he should use?

Thanks again,

Yaron

permanent link
Ulrich Eckhardt (23612223) | answered Nov 01 '11, 5:06 a.m.

Use case is: user develops same software on both Linux and Windows environment. What is the RTC configuration that he should use?

Use multiple repository workspaces, i.e. treat the user as two users. You can btw have two repository workspaces even if you only develop on one machine, this makes it easier to test your own changes in separation from other changes (yes, RTC offers a build engine, which can be used for the same goal, but that's beside the point). You can also flow changesets between workspaces, just remember that you don't "deliver" but only "accept". Delivering is basically useless, see work item 179832.

Uli

permanent link
Yaron Norani (47267065) | answered Nov 01 '11, 7:06 a.m.
Hi,

It looks like we are trying to find solutions that will only fit the constrains of RTC.

The need is very simple:
The user needs to develop same set of files from both platforms.

Now, because RTC uses Eclipse as the "Source Control GUI" and because of the way that RTC manages it, the user should do the following:

1. Have two separate environments on disk and two repositories.
2. use different changesets (yes, they can be linked to one WI).
3. Every "switch" to other environment (by deliver / accept) will cause the changeset to be "completed", and there is a need to create new changeset.
4. Share all the time with deliver / accept, instead of just work on share disk / sandbox.
5. If you use the "accept" between repositories, you have to remember to first perform "complete" to the changeset you want to accept (from the other Eclipse client and other platform.

Yes, you can do it, but I think that it is not a good solution to introduce to the users.

Yaron

permanent link
Geoffrey Clemm (30.1k33035) | answered Nov 01 '11, 9:42 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
When I do multi-platform development myself, I just use one workspace,
on one machine and have multiple build engines, one for each platform I
want to build on. Is there a reason why you want/need to do your
actual editing from each platform?

Cheers,
Geoff

On 11/1/2011 7:08 AM, yaron wrote:
Hi,

It looks like we are trying to find solutions that will only fit the
constrains of RTC.

The need is very simple:
The user needs to develop same set of files from both platforms.

Now, because RTC uses Eclipse as the "Source Control GUI"
and because of the way that RTC manages it, the user should do the
following:

1. Have two separate environments on disk and two repositories.
2. use different changesets (yes, they can be linked to one WI).
3. Every "switch" to other environment (by deliver / accept)
will cause the changeset to be "completed", and there is a
need to create new changeset.
4. Share all the time with deliver / accept, instead of just work on
share disk / sandbox.
5. If you use the "accept" between repositories, you have to
remember to first perform "complete" to the changeset you
want to accept (from the other Eclipse client and other platform.

Yes, you can do it, but I think that it is not a good solution to
introduce to the users.

Yaron

permanent link
Yaron Norani (47267065) | answered Nov 08 '11, 4:59 a.m.
Hi,

The reason is that the user is developing at both environments (Linux / win).
He is developing with QT. He performs changes at Windows and then check it also at Linux and would like to be able to perform changes there as well.
Using the other option (different repositories)- he would be needed to deliver - accept each time.

Your answer


Register or to post your answer.


Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.