mit einem Klick
release
Use this skill when asked to create a release, publish to Maven Central, create GitHub releases, or manage version tagging. It guides through the complete release workflow for this Gradle project.
Menü
Use this skill when asked to create a release, publish to Maven Central, create GitHub releases, or manage version tagging. It guides through the complete release workflow for this Gradle project.
| name | release |
| description | Use this skill when asked to create a release, publish to Maven Central, create GitHub releases, or manage version tagging. It guides through the complete release workflow for this Gradle project. |
This skill guides the creation of releases and snapshots for this Gradle-based project, including publishing to Maven Central and GitHub Releases.
Before publishing, ensure the user has:
SIGNING_IN_MEMORY_KEY: GPG private keySIGNING_IN_MEMORY_KEY_PASSWORD: GPG key passphraseMAVEN_CENTRAL_USERNAME: Maven Central usernameMAVEN_CENTRAL_PASSWORD: Maven Central passwordIf any prerequisite is missing, inform the user and guide them to the GPG Setup Guide first.
This project uses a two-branch model:
main: Stable releases (bug fixes, non-breaking changes)minor: Next minor version development (features)Ask the user which type of release they want to make:
mainminorFollow these steps:
Ensure all changes to be released are in the correct branch:
mainminorHelp the user verify with:
git checkout main # or minor
git pull origin main # or minor
git log --oneline -10
The user has two options for version management:
Option A - Manual (update code first, then tag):
gradle.properties:
VERSION=1.2.3
gradle/build-logic/gradle.properties:
VERSION=1.2.3
docs/website/package.json version fieldOption B - Sync from Git tag (if tag exists first):
# Sync version files to the latest tag
make sync-version
# Review changes
git diff gradle.properties gradle/build-logic/gradle.properties docs/website/package.json
The make sync-version command runs ./sync-version-with-tag.sh which:
vX.Y.Z)v)# Create annotated tag matching the pattern vX.Y.Z
git tag -a v1.2.3 -m "Release version 1.2.3"
# Push the tag (triggers release workflow)
git push origin v1.2.3
Important: Tag must match ^v[0-9]+\.[0-9]+\.[0-9]+$ (e.g., v1.2.3)
The workflow will:
Snapshots are useful for testing changes before a正式 release.
The publish-snapshot.yml workflow runs daily at 02:12 UTC.
main or minor)Snapshots use version with -SNAPSHOT suffix (e.g., 1.2.3-SNAPSHOT).
./gradlew check locally firstv1.2.3 = 1.2.3)Maven Central doesn't allow overwriting releases:
v1.2.4 instead of v1.2.3)Snapshots can be cached. Force update:
./gradlew build --refresh-dependencies
Before publishing, verify:
./gradlew check)vX.Y.Z format# Sync version from latest Git tag
make sync-version
# Verify current version
cat gradle.properties | grep VERSION
# Run all checks before release
./gradlew check
# Create annotated tag
git tag -a v1.2.3 -m "Release v1.2.3"
# Push tag (triggers release)
git push origin v1.2.3