What is “Semi-Linear Merge” in Azure DevOps?
Azure DevOps offers a feature called “Semi-Linear Merge”, which combines two steps: rebasing and merging.
The rebase step takes all the changes from the master
or dev
branch and replays them onto the feature branch. This is used to ensure that the feature branch includes the latest changes from the master
or dev
branch.
The merge step takes all the changes from the feature branch and merges them into the master
or dev
branch.
Pros:
- Ensures that the feature branch includes the latest changes from the
master
ordev
branch - Avoids merge commits
Cons:
- Changes on the
master
ordev
branch may conflict with the changes on the feature branch
For more information, you can refer to Microsoft Devblog.