We are using automatic branch merging in Bitbucket Server with the following model:
Topic branches are merged into either release/1.0 or release/1.1. master only differs from release/1.1 by automatic merge commits.
Usually, each merge produces an explicit merge commit.
This morning, I merged a topic branch into release/1.0. I expected this to produce three merge commits: topic-branch into release/1.0, release/1.0 into release/1.1, and release/1.1 into master. Instead of that last commit, master was fast-forwarded to the new tip of release/1.1.
There were no merge conflicts.
What could be causing this behaviour, and how to avoid it in the future?