Gestion des versions et releases

VérifiéSûr

Crée et pousse des tags de version annotés (semver) pour déclencher le pipeline CI GoReleaser. Il vérifie l'état du dépôt, détermine la prochaine version via un bump patch/minor/major et génère des notes de version à partir de l'historique des commits. Aide lors de la publication de nouvelles versions d'un projet Go.

Spar Skills Guide Bot
DevOpsIntermédiaire
9002/06/2026
Claude Code
#release#git-tag#goreleaser#versioning

Recommandé pour

Notre avis

Crée un tag de version avec message et le pousse pour déclencher le pipeline GoReleaser.

Points forts

  • Automatise le processus de versioning sémantique
  • Génère des notes de version à partir des commits
  • S'intègre directement avec GoReleaser
  • Vérifie l'état propre du dépôt avant création

Limites

  • Nécessite un dépôt Git propre sans modifications non commitées
  • Dépend de la convention de nommage sémantique v0.0.X
  • Ne gère pas les versions préliminaires (alpha, beta)
Quand l'utiliser

Quand vous devez publier une nouvelle version d'un projet Go utilisant GoReleaser.

Quand l'éviter

Si le projet n'utilise pas GoReleaser ou si vous voulez un workflow de publication différent (ex: npm publish).

Analyse de sécurité

Sûr
Score qualité90/100

The skill uses standard git commands for tagging and pushing, with no destructive, exfiltrating, or obfuscated actions. All operations are confined to version control within the repository.

Aucun point d'attention détecté

Exemples

Patch release for bug fix
Release a new patch version with the message 'Fix homebrew cask configuration' to trigger GoReleaser.
Minor release with multiple changes
Create a new minor version tag for the project with release notes summarizing recent commits, then push it.

name: release description: Create a new version tag with release message and push to trigger GoReleaser. Use when user wants to release, tag, bump version, or publish a new version. allowed-tools: Bash, Read, Grep

Release

Create and push a new version tag to trigger the GoReleaser CI pipeline.

Instructions

  1. Check current state

    • Run git status to ensure working directory is clean
    • If there are uncommitted changes, stop and ask the user to commit first
  2. Get the latest tag

    • Run git tag -l --sort=-v:refname | head -1 to get the current version
    • Current versioning follows semver: v0.0.X
  3. Determine next version

    • Ask the user what type of bump they want (patch/minor/major) or if they want a specific version
    • Default to patch bump (e.g., v0.0.5 -> v0.0.6)
  4. Gather release notes

    • Run git log $(git describe --tags --abbrev=0)..HEAD --oneline to see commits since last tag
    • Summarize the changes for the tag message
  5. Create and push the tag

    • Create annotated tag: git tag -a vX.Y.Z -m "Release message"
    • Push the tag: git push origin vX.Y.Z
  6. Confirm success

    • Provide the GitHub releases URL: https://github.com/lch88/logbro/releases

Tag Message Format

Use a concise summary of changes. Examples:

  • Single change: Fix homebrew cask configuration
  • Multiple changes: Add dark mode support, fix memory leak, improve performance

Example

# Check status
git status

# Get current version
git tag -l --sort=-v:refname | head -1
# Output: v0.0.5

# See changes since last tag
git log v0.0.5..HEAD --oneline

# Create tag
git tag -a v0.0.6 -m "Move main.go to cmd package, update goreleaser config"

# Push tag
git push origin v0.0.6
Skills similaires