dev-backup

v1.0.1

Create versioned snapshots of a workspace project during development to enable safe rollback before risky changes or upon user request.

0· 149· 2 versions· 0 current· 0 all-time· Updated 13h ago· MIT-0

Install

openclaw skills install dev-backup

dev-backup

Snapshot the current state of a named project for safe rollback.

Usage

Each project gets its own snapshot numbering. The project name is always the first argument.

# Backup any project
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
bash "$SCRIPT_DIR/dev-backup.sh" <project-name> --project-dir /path/to/your/project

# Example: backup a "my-app" project
bash "$SCRIPT_DIR/dev-backup.sh" my-app --project-dir /home/user/projects/my-app

# No --project-dir? Uses the current working directory
cd /home/user/projects/my-app
bash "$SCRIPT_DIR/dev-backup.sh" my-app

Naming

Snapshots are named per project:

  • my-app-snapshot-1, my-app-snapshot-2, …
  • another-project-snapshot-1, another-project-snapshot-2, …

Each project tracks its own counter independently.

Excluded from snapshot

  • .git, node_modules, .vite, .cache, *.log, .env, backups/

Restore

To restore a snapshot:

cp -r <backups-dir>/<project-name>-snapshot-3/ <your-project-dir>/

Or use the .latest symlink:

cp -r <backups-dir>/.latest/ <your-project-dir>/

Verification

After backup, confirm:

ls -la <backups-dir>/

You should see the project-prefixed snapshot and .latest symlink.

Version tags

latestvk970atggddr7a1aa78j0gggcxh854j0p