Merging branches

In the Decision Center Business console, you can merge the content of branches, releases, and activities in a decision service.

From one of the branches you want to merge, click Merge Branches in the toolbar, and select the branch you want to merge with. After you specify the branches to be merged, Decision Center displays a table with the projects that were modified. You can expand each project to see the name and folder of project elements that are different between the branches, and their state in both branches. This table also contains an Actions column, containing a proposed action to take. You can click inside the cells of this column and decide what to do with each project element that is different between the two branches:
  • Update the working branch with the modifications made in the branch you selected in the Choose Branch to Merge With dialog

  • Update the branch you selected in the Choose Branch to Merge With dialog with the modifications made in the working branch

  • Take no action at all

The elements taken into account during a merge operation are:
  • Rule Artifacts (BAL rules, technical rules, decision tables, decision trees, functions)
  • Simulation artifacts (metrics, KPIs, simulation models, input data, simulations)
  • Testing artifacts (test suites, test cases)
  • Decision operations
  • Deployment configurations
  • Ruleflows
  • BOM changes
  • Queries
  • Variable sets
  • Vocabulary
  • B2X
  • Resources
  • Folders
The following changes cannot be merged:
  • BOM: The BOM path order is not versioned and cannot be detected by a branch merge. Synchronize with Rule Designer to update the BOM path order.
  • Decision services: Changes to decision service properties, categories, queries referenced in decision operations, dynamic XOM (schemas), configuration file for the classic rule engine, and the engine mode. You must change them manually in the release branch.

To help Decision Center propose the correct action to take, you can specify your preferred direction for merging from the following options:

Bidirectionally

This is the default option. The proposed action is based on the assumption that you want to reflect changes made in either branch as follows:

  • If a new rule exists in one branch, you want to add it to the other branch.

  • If a rule has been deleted in one branch, you want to delete it from the other branch.

  • If a rule has been modified in one branch but not in the other, you want to update the unmodified one.

  • If a rule has been modified in both branches, no action is proposed, and you must specify what action to take.

Only to the branch you merge with

When you want all changes you made in the working branch to be pushed to the branch you are merging with, but none of the changes made in that branch to be reflected in your working branch.

Only to the working branch

When you want all changes made in the branch you are merging with to be reflected in your working branch, but none of the changes made in your working branch to be pushed to the other branch.

You can compare the different versions of a project element by hovering over it, and clicking Show compare view.

After you click Apply Merge in the upper right corner, you can add a comment, and select the option to create a snapshot of the branches before you merge them. When the merge operations are completed, a report is displayed where you can review the changes made. If you created a snapshot of the branches before merging, you can also review these changes later, by comparing the snapshot with the current version of the branch.