Skip to content

Updating projects

Open your project’s .scaffolder file to see the current scaffolder version:

Terminal window
cat .scaffolder
Terminal window
sc update "project-name"

Or using the update binary:

Terminal window
update "project-name"

This will:

  1. Read .scaffolder to determine current version
  2. Check versions.json for the latest version
  3. Validate the migration path (no skipping major versions)
  4. Create a backup in .scaffolder-backup/[date]-v[version]/
  5. Show a diff for each changed file
  6. Prompt you for each file: Overwrite, Merge, Skip, or Show diff
  7. Update .scaffolder version on completion
  8. Log the update in your project’s CHANGELOG.md

For each file that changed between versions, you’ll see:

  • (1) Overwrite — replace your file with the new template
  • (2) Merge — manual merge required (keeps your file, shows template path)
  • (3) Skip — keep your current file unchanged
  • (4) Show diff — view the differences before deciding

If something went wrong after updating:

Terminal window
sc update "project-name" --rollback

This lists all available backups and lets you restore from any of them.

If your project is multiple versions behind, scaffolder applies each migration step in sequence. You cannot skip major versions — each major version must be applied in order.