Skip to content

Block release if tagged commit is not an ancestor of master

Brian Williams requested to merge bwill/merge-commit-release-guard into master

Why is this change being made?

When performing a true merge, the commits from a feature branch are applied to master via a merge commit. When doing a release in this case, the merge commit must be the commit to be tagged in order for the changes to correctly reflect the state of master. While the commits added via the merge commit do appear in the log on master, when checking out to those commits, they actually reflect the state of the branch which they were developed on. This change adds a check to the release pipeline which uses git merge-base in order to verify if a commit is an ancestor of master before executing a release. If the commit is not an ancestor, then it does not reflect the state of master and the release should be halted.

Edited by Brian Williams

Merge request reports