Resolve conflicts to safely merge changes

The ability to resolve conflicts between tests and flows on a test branch and the current versions on the master branch is critical to a smooth version control workflow. With our new conflict resolution functionality, you can compare a test or flow on a test branch and the master branch and resolve conflicts by including or excluding individual steps, variables, and parameters from either version. When the conflicts are resolved and saved, a new version of the test or flow is created on the test branch. Once all conflicts are resolved, you can safely merge the test branch into master.

How it works

To get started, you'll need to navigate to the Branch Details page:

  1. Click on Tests in the left-hand navigation
  2. Select the Branches tab at the top and open a specific branch. Tests and flows that have a conflict between the test branch and the master branch will show a (red ! icon) in the conflicts column.
  3. Click on the red :exclamation: icon to open the conflict resolution view

Branch Details page

The conflict resolution view

The conflict resolution view includes three columns.

  • The left column represents the current version on master.
  • The right column represents the current version on the test branch.
  • The center column is used as the draft space where you can select steps from the left and right.

The red and green cards indicate steps that differ between the versions, and the white steps indicate steps that exist in both versions. You have the ability to select steps from either version to generate a new version without conflicts.

Variable and parameter cards

  • The variable and parameter cards show a list of all variables or parameters combined from both versions, with tags indicating where they came from.
  • If there is a variable or parameter that exists in both versions but has a varying default value, you will see a (! Value conflict) message which must be resolved to continue. You can select and deselect which variables and parameters you would like to use in the new version using the checkboxes provided.

The conflict resolution view

Review the final version

When you are satisfied with the steps, variables, and parameters selected in the center column, click Review to review the final version. If you notice something isn’t quite right, you can go back to the previous editing page and make changes.

When you are happy with the version, click Save to create a new version on the test branch. At this time, the red :exclamation: icon is removed for that test or flow.


Review the final version

Merging a branch

Once all conflicts have been resolved, you can click the Merge button and safely merge the new version into master.


Merge confirmation

If all conflicts have not been resolved and you wish to proceed with the merge, you will be presented with a modal warning of potential conflicts. Proceeding with the merge will overwrite the master version with your test versions.


Potential conflicts warning

For more information on how branching works in mabl, check out our guide on branching and version control.