| 247 | } |
| 248 | |
| 249 | function printHelp() { |
| 250 | console.log(` |
| 251 | ${colorize(`🐸 bumpy v${__BUMPY_VERSION__}`, 'bold')} - Modern monorepo versioning |
| 252 | |
| 253 | Usage: bumpy <command> [options] |
| 254 | |
| 255 | Global options: |
| 256 | --cwd <dir> Run as if started in <dir>. Used to point bumpy at an |
| 257 | untrusted checkout (e.g. a fork PR) while bumpy itself |
| 258 | is fetched from a trusted directory — see the |
| 259 | pull_request_target setup in docs/github-actions.md |
| 260 | |
| 261 | Commands: |
| 262 | init [--force] Initialize .bumpy/ (migrates from .changeset/ if found) |
| 263 | add Create a new bump file |
| 264 | --none Set all changed packages to "none" (acknowledge without bumping) |
| 265 | --empty Create an empty bump file (no releases needed) |
| 266 | generate Generate bump file from branch commits |
| 267 | status Show pending releases |
| 268 | check Verify changed packages have bump files (for git hooks) |
| 269 | --strict Fail if any changed package is uncovered (default: only fail if no bump files at all) |
| 270 | --no-fail Warn only, never exit 1 |
| 271 | --hook <context> Hook context: "pre-commit" or "pre-push" (controls which bump files count) |
| 272 | --base <branch> Branch to compare against (default: baseBranch; use the channel branch for channel PRs) |
| 273 | version [--commit] Apply bump files and bump versions |
| 274 | (on a channel branch: moves pending bump files into .bumpy/<channel>/) |
| 275 | publish Publish versioned packages |
| 276 | (on a channel branch: derives prerelease versions and publishes to the channel dist-tag) |
| 277 | (--snapshot <name>: transient preview publish to a throwaway dist-tag) |
| 278 | ci check PR check — report pending releases, comment on PR |
| 279 | ci comment Post a pre-rendered comment (workflow_run half of the fork-comment split) |
| 280 | ci plan Report what ci release would do (JSON + GitHub Actions outputs) |
| 281 | ci release Release — create version PR or auto-publish |
| 282 | ci setup Set up a token for triggering CI on version PRs |
| 283 | |
| 284 | Add options: |
| 285 | --packages <list> Package bumps (e.g., "pkg-a:minor,pkg-b:patch") |
| 286 | --message <text> Bump file summary |
| 287 | --name <name> Bump file filename |
| 288 | --empty Create an empty bump file |
| 289 | |
| 290 | Generate options: |
| 291 | --from <ref> Git ref to scan from (default: branch point from baseBranch) |
| 292 | --dry-run Preview without creating a bump file |
| 293 | --name <name> Bump file filename |
| 294 | |
| 295 | Status options: |
| 296 | --json Output as JSON (includes dirs, bumpFiles, packageNames) |
| 297 | --packages Output only package names, one per line |
| 298 | --bump <types> Filter by bump type (e.g., "major", "minor,patch") |
| 299 | --filter <names> Filter by package name/glob (e.g., "@myorg/*") |
| 300 | --verbose Show bump file details |
| 301 | --channel <name> Show channel status (default: inferred from the current branch) |
| 302 | |
| 303 | Publish options: |
| 304 | --dry-run Preview without publishing |
| 305 | --tag <tag> npm dist-tag (e.g., "next", "beta") |
| 306 | --no-push Skip pushing git tags to remote |