Thursday, December 11, 2008

The procedure of the deliver operation

The procedure of the deliver operation

 

The deliver operation proceeds in the following order:

 

  1. When you start the deliver operation, your development stream is placed in the deliver-in-progress state.  
  2. Dependencies between versions in the change sets of the activities that are as yet undelivered in the target stream are checked.  
  3. Each directory in your development stream is evaluated sequentially. Versions are checked out and changes are merged to the target stream when needed. If a reserved directory checkout is encountered in the target stream, the deliver operation stops. Any successful directory merges are retained.  
  4. An attempt is made to check out each element that requires a merge. If an element that cannot be checked out is encountered (for example because another team member’s deliver operation has already checked out the element), the element is skipped and more attempts are made to check out the remaining elements.  
  5. If an element cannot be checked out, the deliver operation does not proceed to the following step. In this case, you have two options:  
    • Wait until the other developer completes or cancels the deliver operation, and then restart your deliver operation. However, with a deliver operation in progress, any new versions you create in your development stream are not delivered until the next deliver operation.
    • Undo your deliver operation and continue working on your activities. 
  6. After all elements that can be checked out are successfully checked out, each element is merged. Diff Merge starts and requests your input when merge conflicts are encountered.  
  7. When all merges are finished, you are prompted to build and test the work in your integration view.  
  8. The deliver operation stays in the deliver-in-progress state until you formally complete the operation (issue the complete command). To complete the deliver, the following is done:  
    • The merge results in the target stream are checked in.
    • The state of the stream is changed to Complete.

 

No comments: