Search code examples
tfsbuildshelveset

how the build defintion unshelve the given shelveset during build process


I want to understand the process how the build definition unshelve selected shelveset and build the code in TFS2013.

It will check whether the shelveset source code is mapped by build in the workspace, if so it will unshelve them. i want to know how internally build will evaluate the complete process.


Solution

  • Each build process template has a parameter called SupportedReasons. This enum is normally set to all, but you can also unselect the option ValidateShelveset to disable a shelveset build option, as shown in the picture below : enter image description here

    During the build pipeline, TFS build service account will running tf command to unshelve in the "Get Version" property in the advanced section of the "Parameters" tab on the "Queue Build" dialog.

    It's using tf unshelve Command which will restores shelved file revisions to the workspace on build agent.

    Then TFS will build source files the same as others. You could either check the build log to get more detail info, or open your build process template and click each activity to understand how the build pipeline works.