#!/usr/bin/env bash set -e echo "=== start release ===" echo "1. update version and generate CHANGELOG..." pnpm changeset version echo "2. update dependencies..." pnpm install echo "3. commit version update...(ensure execute "pnpm changeset" before release)" git add . git commit -m "release: publish packages" echo "4. publish to npm..." pnpm publish -r --no-git-checks --access public echo "5. prepare to push to remote git repository..." read -p "confirm push to remote git repository? (y/N) " confirm if [[ $confirm == [yY] ]]; then echo "pushing code and tag to remote git repository..." git push --follow-tags echo "=== release completed ===" else echo "cancel pushing to remote git repository" echo "=== release completed (not pushed to remote) ===" fi