Overview
Conflict Resolution helps manage differences between the contents of a Deployment Package and the current state of connected target environments. A conflict occurs when an entity in a target environment has been changed independently and no longer matches the version tracked in the package.
This feature provides two ways to review and resolve conflicts:
- Default Conflict Resolution Dashboard: A package-level dashboard used to review conflicts across connected target environments and assign a default resolution for each entity.
- Conflict Resolution Wizard: A guided dialog that appears during Deploy or Checkout when conflicts exist and no default resolution has already been applied.
Conflict detection compares the state of entities in connected target environments against the version tracked in the Deployment Package. Conflicts are typically surfaced when changes were made directly in a target environment, such as QA or Production, after the package version was deployed.
Default Conflict Resolution Dashboard
The Conflicts dashboard is available inside a Deployment Package on the Deployment Server. It provides a centralized view of conflicting entities across connected target environments.
The dashboard displays conflict information for target environments such as QA and Production. The Development environment is not included because it is the source environment for changes and is expected to be ahead of deployed package versions.
Each conflict entry identifies the affected entity and indicates the target environment where the conflict exists. This makes it possible to review changes made outside the normal deployment flow and determine how each conflict should be handled.
Resolution Options
Each conflicting entity can be assigned one of the following resolution values:
- Ignore: Keeps the existing version in the target environment and skips the conflicting entity during deployment.
- Override: Replaces the existing version in the target environment with the version from the Deployment Package.
When a conflict is set to Ignore, the conflicting entity in the target environment remains unchanged. The package is still deployed, but that specific entity is skipped for the selected target environment.
When a conflict is set to Override, the version in the target environment is replaced with the version from the Deployment Package. After deployment, the conflict is no longer detected because the package and the target environment are aligned for that entity.
Why Set a Default Resolution?
Setting a resolution in the Conflicts dashboard defines the default behavior for that entity when the package is deployed. If a default resolution has already been selected, deployment can continue without showing an additional conflict-resolution prompt for that entity.
This approach is useful when the intended resolution is already known before deployment begins.
Conflict Resolution Wizard
The Conflict Resolution Wizard appears when a conflict is detected and no default resolution has been set in the package-level Conflicts dashboard. The wizard presents the conflicting entities and requires a resolution before the action can continue.
The wizard is used in two places:
- Deploy: When deploying a package to a target environment.
- Checkout: When checking out a project from the Deployment Server into a connected environment.
Conflict Resolution Wizard: Deploy
During deployment, the wizard displays only the conflicts relevant to the selected target environment. For example, if deployment is being performed to QA, only conflicts detected in QA are shown in the dialog.
Each listed entity requires one of the following resolutions:
- Ignore: The conflicting entity in the target environment is kept as-is, and the incoming package version for that entity is skipped.
- Override: The incoming package version replaces the conflicting version in the target environment.
After a resolution is selected for each listed entity, deployment can continue.
Deploy Behavior
- A package is selected for deployment to a target environment.
- If unresolved conflicts exist for that target environment, the wizard opens automatically.
- The conflicting entities are listed for review.
- A resolution of Ignore or Override is selected for each conflict.
- Deployment continues using the selected resolutions.
Selecting Override during deployment replaces the conflicting version in the target environment with the version from the Deployment Package.
Conflict Resolution Wizard: Checkout
The same conflict-resolution experience is also available during Checkout. Checkout pulls the latest version of a project from the Deployment Server into a connected environment. If local changes already exist in that environment for entities included in the checkout, the wizard appears before the import continues.
In this scenario, the conflict-resolution options determine how local changes are handled:
- Ignore: Preserves the local version of the conflicting entity and skips the incoming version for that entity during checkout.
- Override: Replaces the local version of the conflicting entity with the version being checked out from the Deployment Server.
This makes it possible to control whether local environment changes are preserved or replaced when pulling the latest project version.
Checkout Behavior
- A project is checked out from the Deployment Server into a connected environment.
- If conflicting local changes are detected, the wizard opens automatically.
- The conflicting entities are listed for review.
- A resolution of Ignore or Override is selected for each conflict.
- Checkout continues using the selected resolutions.
Selecting Override during checkout replaces local conflicting changes with the version retrieved from the Deployment Server.
Key Differences Between Default Resolution and the Wizard
- Default Conflict Resolution Dashboard: Used to define package-level conflict behavior in advance.
- Conflict Resolution Wizard: Used when a conflict must be resolved at the time of deployment or checkout.
- If a default resolution has already been configured in the package, the deployment workflow may continue without opening the wizard for those entities.
- The wizard is target-specific during deployment and local-change-specific during checkout.
Common Use Cases
- Reviewing unexpected changes made directly in a QA or Production environment.
- Preserving emergency fixes made in a target environment by selecting Ignore.
- Re-aligning a target environment with the package by selecting Override.
- Protecting or replacing local changes when checking out a project from the Deployment Server.