Selective Deployments
Published 30 August 2017
During the deployment process, you may wish to only deploy certain scripts from your ReadyRoll project, for example excluding some number of the most recent changes. There are several ways to achieve this.
Branching and merging (recommended)
One option is to create a release branch alongside your development branch using your source control system. Modifications to the development branch that you do not wish to deploy should not be merged into the release branch.
For more information about a possible branching and merging strategy for managing your releases, see this article about GitFlow.
Deploying old builds
If selective deployments are not a normal part of your workflow, you may not wish to create separate branches. Instead, you can deploy a previous build. This can be done from older builds on your continuous integration server (for example VSTS/TFS, TeamCity, etc.). If these builds are unavailable, you can checkout an older revision of the project from your source control system, and use this for the deployment.
Manual deletion (not recommended)
A final, quick and dirty option is to simply temporarily delete the migration scripts you do not wish to include from your ReadyRoll project, and deploy using this version.
This may cause problems if you have features such as Programmable Objects or Offline Schema Model turned on, or you are using Pre- and Post-Deployment scripts, as changes to these files will not be reverted using this method.