I am just about to merge my release branch into master with an on-premises Azure DevOps environment. When I go for completing the Pull Request I am given four merge types options:
- Merge (no fast-forward)
- Squash commit
- Rebase and fast-forward
- Semi-linear merge
I would prefer keeping all my history intact, making sure to minimize issues on hotfixes or future release branch. I am trying to follow the git-flow process.
Usually I would use a Rebase with fast-forward, however (when I select "Squash") a message on the screen says:
"Consider using a no-fast-forward merge if you plan to use the sourcfe branch for future work".
What does that mean? Is Rebase with fast-forward not safe?
Thanks for you advice.