Integration with Jazz source control
This topic describes this integration at a high level.
The Jazz source control integration simplifies the task of managing a method library under version control. After activating the integration, the authoring perspective is supplemented with the following features:
- The ability for you to check-in, deliver, and share new method plug-ins with other users in Jazz source control.
- The ability to encapsulate changes you make to source content as outgoing change sets that others users of the integration must accept before being able to edit these resources.
- The ability to automatically lock source content as you create or edit it so that your changes cannot conflict with changes made by other users.
- The ability for you to identify and accept incoming changes that have been made to source content by other users.
- Simplified procedures for renaming and deleting method plug-ins.
- The ability for you to lock all elements in a method plug-in, to find locked files, and release all locked files that have not been changed.
Note that the integration does not provide a mechanism that automatically checks in modified files. Users need to check in and deliver modified files.
Automatic pessimistic locking
Engineering Method Composer prompts users with a dialog box showing any files under Jazz source control to be locked if a user performs any action that would potentially cause the underlying files to be modified. Clicking OK in the dialog box locks the files while clicking Cancel aborts the current operation.
If any of the underlying files is currently locked by another user, an error dialog would show up.
Engineering Method Composer does not prompt the user concerning files that are already locked by the current user.
Sharing projects in a Jazz repository
Use the Navigator view to share a standalone method library project or selected distributed method library plug-ins to a Jazz repository. Sharing a project stores the project in the Jazz repository workspace while delivering a shared project stores the project in the Jazz stream. The automatic pessimistic locking mechanism only works with files in projects that are stored in a Jazz stream. Therefore, it is always a good practice to deliver a project as soon as it is shared.
Loading projects associated with Engineering Method Composer files
In most cases, the user loads existing projects from Jazz repositories into Engineering Method Composer’s Eclipse workspace, and then opens the library and makes authoring changes upon the library. For example, the user can load each of the three groups of plug-ins described in the previous example into the same workspace, and then open them as a workspace library. Since there are three streams in this case, the user needs to have three Jazz repository workspaces created, each of them corresponding to a single stream.
Creating a new method plug-in in a distributed method library
Creating a new method plug-in in a distributed method library creates a corresponding Eclipse project. The user can share the new method plug-in to a Jazz repository at any time, but should make sure to deliver it as soon as it is shared to the Jazz repository.
Checking in, delivering and unlocking
Users employ the "Pending Changes" feature of Engineering Workflow Manager to check in any Unresolved changes to the Jazz repository workspace and then to deliver Outgoing changes to the Jazz repository stream. After delivering, Engineering Method Composer prompts the user with a dialog box for unlocking the locks on the delivered files. Clicking Yes releases the locks.
Restrictions
The pessimistic locking on files in Jazz source control enables multiple Engineering Method Composer users to have concurrent access to the library and to edit elements independently as long as users do not modify the Name, Presentation Name, or Brief Description since Engineering Method Composer will only lock the element xmi files only
The Jazz source control integration supports distributed repositories for Engineering Method Composer libraries so that method plug-ins can be stored in different Jazz repositories, project areas, and components. The only requirement is that any method plug-in project must reside in only one Engineering Method Composer component and any IBM Engineering Lifecycle Optimization - Method Composer component can only be included in one IBM Engineering Lifecycle Optimization - Method Composer stream.