#!/bin/sh # Auto-version hook: incrémente la version après certains commits # Récupérer le dernier message de commit commit_msg=$(git log -1 --pretty=%B) # Ignorer si le commit contient [skip version] ou si c'est un commit de version if echo "$commit_msg" | grep -qE "\[skip version\]|chore: bump version"; then exit 0 fi # Vérifier si le commit devrait déclencher une mise à jour de version # Types pris en charge: # - feat: → minor bump # - fix:, perf:, security:, patch:, refactor: → patch bump # - feat!:, refactor!:, etc. (avec !) → major bump # - breaking change ou BREAKING CHANGE → major bump # Ignorés: chore:, docs:, style:, test:, ci:, build: if echo "$commit_msg" | grep -qiE "^feat:|^fix:|^perf:|^security:|^patch:|^refactor:|^[a-z]+!:|breaking change"; then # Lancer le script en mode hook (silent + ajout auto au staging) pnpm tsx scripts/auto-version.ts --silent --hook # Vérifier si package.json a changé if ! git diff --quiet package.json; then echo "" echo "📦 Version mise à jour automatiquement" echo "💡 Pour commit: git add package.json && git commit -m 'chore: bump version'" fi fi exit 0