When deploying snapshots in "restore" mode, Configuration Manager might detect that some custom fields need to be deleted as they're not present in the snapshot. But in some cases, deleting some custom fields might lead to undesired consequences. Here's an example.
The Jira Agile app creates a couple of custom fields upon installation which are required by the app to function properly. If you've created the snapshot on a Jira instance that does not have the Jira Agile app installed, Configuration Manager will detect that all the custom fields contributed by Jira Agile should be deleted. But this will break the app.
To handle such cases, Configuration Manager provides the so-called "selective deletion" feature, which allows you to exclude certain objects from the deploy operation.
When you deploy a snapshot in "restore" mode, whenever deletion of a custom field is detected, Configuration Manager presents the following page as part of the Deploy Wizard.
On this page, you can see all custom fields which will be deleted by the deploy.
You can exclude them by clicking the "Exclude" link in the "Operations" column
The page allows to bulk include/exclude custom fields:
Exclude/Include All - exclude or include all custom fields from the deploy
By plugin - include or exclude all custom fields contributed by a plugin
To perform bulk include/exclude, click on the "Cog" icon in the "Actions" column header and select an action
When a custom field is excluded from the deploy the row will be grayed out.
When a custom field is excluded from the deploy, you'll see an "EXCLUDED" lozenge on the Analyze page when you browse through the differences.