Esta página se muestra en inglés. Una traducción al español está en curso.
ScriptsJul 26, 2026·2 min de lectura

Release-please — Automated Release Management by Google

Generates release PRs based on conventional commits, automating changelog generation and version bumping across multiple languages and monorepos.

Listo para agents

Staging seguro para este activo

Este activo primero queda en staging. El prompt copiado pide inspeccionar los archivos staged antes de activar scripts, config MCP o config global.

Stage only · 29/100Política: staging
Superficie agent
Cualquier agent MCP/CLI
Tipo
Skill
Instalación
Stage only
Confianza
Confianza: Established
Entrada
Release-please Overview
Comando de staging seguro
npx -y tokrepo@latest install 588e2b01-888b-11f1-9bc6-00163e2b0d79 --target codex

Primero deja archivos en staging; la activación requiere revisar el README y el plan staged.

Introduction

Release-please automates CHANGELOG generation, version bumps, and GitHub releases based on conventional commit messages. Maintained by Google, it opens release PRs that, when merged, create tagged releases.

What Release-please Does

  • Parses conventional commits (feat, fix, chore) to determine semantic version bumps
  • Generates and maintains CHANGELOG.md from commit history
  • Opens release PRs bundling pending changes with updated versions
  • Creates GitHub releases with notes when release PRs merge
  • Supports monorepos with independent or linked versioning per package

Architecture Overview

Release-please runs as a Node.js CLI or GitHub Action. It reads commits since the last release tag, categorizes them via the Conventional Commits spec, calculates the next version, and generates a release PR. A manifest file tracks per-package release types and strategies with pluggable support for Node, Python, Java, Go, Ruby, and more.

Self-Hosting & Configuration

  • Install via npm or use the GitHub Action (googleapis/release-please-action)
  • Set release-type per package in release-please-config.json
  • Track versions in .release-please-manifest.json for monorepos
  • Use --target-branch for release trains or maintenance branches
  • Map commit types to changelog headings in the config file

Key Features

  • 20+ release strategies for different language ecosystems
  • Monorepo support with per-component and cross-component dependency updates
  • Customizable commit type to changelog section mapping
  • Linked versions for groups of packages sharing a version number
  • Plugin system for custom versioning and changelog formatting

Comparison with Similar Tools

  • semantic-release — Fully automated on push; release-please adds a PR review step before publishing
  • standard-version — Deprecated predecessor; release-please is CI-native and actively maintained
  • changesets — Requires manual changeset files; release-please infers changes from commits
  • GoReleaser — Go-specific; release-please is language-agnostic and focuses on versioning

FAQ

Q: Does release-please publish packages to npm or PyPI? A: No. It handles versioning, changelogs, and GitHub releases. Add separate CI steps for publishing.

Q: Can I use it without conventional commits? A: No. Conventional commits are required for automatic version bump detection.

Q: How does monorepo support work? A: Configure each package path in release-please-config.json with its own release type. Versions are tracked independently per component.

Q: What if multiple features merge before the release PR? A: All unreleased commits accumulate into a single release PR with the appropriate version bump.

Sources

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados