diff --git a/.gitlab/scripts/release.sh b/.gitlab/scripts/release.sh
index 565fd40dc1a36fd21ad5c3dc34f792788e2cc11a..d6ed49bec1aceb0a6418e9dd7341d73a10cd93ae 100755
--- a/.gitlab/scripts/release.sh
+++ b/.gitlab/scripts/release.sh
@@ -27,7 +27,7 @@ echo "${version}" | "${script_dir}/check-semantic-version.sh"
 echo "Starting release process for ${version} ..."
 
 echo "Determing last stable version ..."
-last_stable_version_sha="$(git describe --tags --match '*.*.*' | xargs git rev-list -n1)"
+last_stable_version_sha="$(git tag | grep -E '^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$' | sort --version-sort --reverse | head -n1 | xargs git rev-list -n1)"
 echo "Using commit '${last_stable_version_sha}' to start the changelog from ..."
 
 echo "Creating changelog ..."