Files
mercadodevida/docs/versioning.md

1.4 KiB

Versionado semántico y Conventional Commits

Fuente de verdad

La versión del producto vive en:

project/VERSION

Los package.json del monolito deben mantenerse sincronizados con ese valor.

Conventional Commits obligatorios

Formato:

<type>[optional scope][!]: <description>

Tipos permitidos:

  • feat
  • fix
  • docs
  • chore
  • refactor
  • perf
  • test
  • build
  • ci
  • style
  • revert

Ejemplos:

feat(orders): add awaiting-payment notifications
fix(monolith): clean stale deployments before start
chore(release): v0.2.0

Herramientas Orquestra

Validar un mensaje:

python3 scripts/validate_conventional_commit.py --message "fix(monolith): clean stale deployments"

Instalar hook local de Git:

./scripts/install_git_hooks.sh

Bump semver:

python3 scripts/version.py bump patch
python3 scripts/version.py bump minor --commit --tag
python3 scripts/version.py bump major --commit --tag

Ver versión actual:

python3 scripts/version.py show

Cierre de features

scripts/commit_feature.sh genera commits convencionales automáticamente usando el tipo del ticket:

  • featurefeat(...)
  • fix / bugfix(...)
  • chorechore(...)

verify.sh valida:

  • project/VERSION como semver.
  • package.json sincronizados.
  • último commit compatible con Conventional Commits.