I have a Sandbox containing a sub-project hierarchy.
1> How to I select a particular version of sub-project within the Sandbox, similar to "Update Member Revision..." pop-up menu for member history view and RESYNCHRONIZE to populate the Sandbox with another version of sub-project contents?
2> How do I determine by looking at the history view of sub-project from the Sandbox GUI about the currently selected sub-project version, similar to "WORKING" item shown in the member history view?
Hello Pashan None,
Have you tried with "Snapshot" operation for sandbox sub project? Using this you could easily "Snapshot" the sub project based on your require sub project version, and doing so the require sub project version content alone will be fetched and this will not affect the "project configuration".
After Snapshot close the opened sub project of sandbox and reopen from corresponding Sandbox tabs. For example if you snapshot from revision 1.2 to 1.5, then close the 1.2 and go to build sandbox view and look for 1.5 sandbox. Then you will be obtaining require content.
Also this will work for Toplevel sandbox. So the snapshot path should be your sandbox parent path. So create sandbox at require sub project level
Hope this helps.
Hello Pashan None,
I think its "invisible" in your viewset. You could make it visible by selecting "Viewset ==> Customize ==> Actions ==> Configuration Management ==> Sandbox" and make "Snapshot" as visible. If not just select the require sandbox sub project, right click and choose "Customize This Menu" and click on "+" button at bottom and select "Sandox" from Action dropdown and choose "Snapshot".
Hello Pashan None,
First of all please excuse me for providing different operation name. Its not "Snapshot", its "Retarget" sandbox. I tried to edit my post, but cant edit anymore.
Actually I tried both "Snapshot" and "Retarget" option, but when drafting the response I explained about "Retarget" and mentioned the name as "Snapshot".
Please try with the Retarget option. The snapshot is nothing but similar to checkpoint that we do in Project.
Regarding Point number 2,
- In project history view it will not be notified. But you could find near your selected sub project itself. As like how the Build or Variant sub projects appear in the Project View.
With the braces enclosed (188.8.131.52) you could identify easily which version of sub project you currently retargetted.
I am getting the following error when I try "Retarget" on a sub-project within the hierarchy:
" Retarget failed: The specified sandbox is not registered as a top level sandbox"
So, how do I pickup another version of sub-Project within my sandbox?
Hello Pashan None,
You could have observed a note in my first post. The "retarget" will work only with the parent level of sandbox. Which means the sub project which you decide to perform "retarget" should be your actual sandbox parent directory.
Yes, this is the limitation in using retarget . You could check whether it could fit somehow with your requirement (just like living with workaround)
Thank you for the clarification.
That means Integrity doesn't support the concept of Building Block Version [Sub-Project Version] for the Top-Level Project.
Essentially there is only manual way of creating Sandbox for all the Building Blocks under the Top-Level Project.
ClearCase or CM/Synergy both support at least Building Block approach for software build.
I never thought Integrity doesn't support this basic concept of large software project where it contains multiple building blocks which are themselves versioned by different groups.
OK, it is clear now.
Hi Pashan None,
Yes you are right. Integrity doesn't support the block level subproject configuration. But in clearcase I dont think their is a concept of Project and Sandbox. Which means you will directly work on project itself. So, its more flexible in handling this. But the concept is somewhat different in Integrity, maybe that hinders them from implementing in such a way.
The only concentration here is how the retargeted sub project will be consider in case of Checkpoint creation? Because in case of checkpoint with this concept the retarget should be considered as "configure subproject". Its confusing right , because here is how Integrity differs from Clearcase or other VC tools
You could post an idea in community if you feel its really helpful.
The only way for non root sandboxes I know is to use Subproject->Configure but this is dangerous since it affects all users
that are currently using the parent project (this is a server side operation).
One workaround for this problem is to create a new root project with shared subprojects (Subproject->Add Shared)
These shared projects can then be configured to an arbitrary project/checkpoint version without affecting their original parent project.
However it will affect users of the newly created root project of course.
If the version hierarchy of the parent project is not to complex select the head of the parents project history
an use "View Project" from the context menu. You can then see a build project view with version infos for subprojects.
Note that this may not reflect the latest checkpoints since checkpoints can be done from every subproject.
In the end the safest way is to use Project->Views->View Information on the subproject to get the version of the last checkpoint.
Again this last checkpoint may not reflect the current state of the project, there may be newer members.
(or even older if Update Member Revision was used). The curent state of the project has no version info yet.
You can see such differences to the current state if you apply "View Project Differences" on one specific revision from the project history.