nf

Snapshots

Snapshots move WordPress database and mutable wp-content data through explicit, reviewable files. Theme files are not included in env snapshots.

Local Snapshots

nf env snapshot add [name]
nf env snapshot list
nf env snapshot use [name] [--yes]
nf env snapshot remove [name]
nf env snapshot prune [--keep N] [--dry-run] [--yes]

Local env snapshots live under:

~/.local/share/nf/snapshots/local/<project-slug>/<snapshot-name>/

Each snapshot contains:

The wp-content archive includes only uploads/, plugins/, mu-plugins/, and languages/. It skips themes.

nf env snapshot use creates a safety snapshot named YYYY-MM-DD-HHMMSS-pre-restore before restoring the selected snapshot. Add --yes to skip the interactive confirmation.

Remote Snapshots

Create a remote snapshot from cached remote site env records:

nf site snapshot client.app1-linode:live
nf site snapshot list

Remote snapshots live under:

~/.local/share/nf/snapshots/remote/<env-id-slug>-YYYY-MM-DD-HHMMSS/

Import a remote snapshot into the current project’s local snapshots:

nf env snapshot import <remote-snapshot-name> --name live-copy
nf env snapshot use live-copy --yes

Shortcut restore from a remote snapshot:

nf env snapshot use --remote <remote-snapshot-name> --name live-copy --yes

This imports the remote snapshot into the current project’s local snapshots, restores it, creates the normal pre-restore safety snapshot first, and keeps the imported local snapshot for audit/reuse.

Remote Snapshot Cleanup

nf site snapshot remove <name> [--yes]
nf site snapshot prune [--keep N] [--dry-run] [--yes]

Use dry-run before pruning when possible.

Import a Handoff Into Local Development

nf env import <source> [--db path] [--source-url url] [--name name] [--dry-run] [--yes]

nf env import imports into the current project’s local env only. It accepts an nf site export directory, or a generic WordPress filesystem directory when paired with --db.

The import creates an import snapshot, creates the normal pre-restore safety snapshot, restores the database plus wp-content/uploads, plugins, mu-plugins, and languages, runs URL search-replace when a source URL is known, activates the configured local theme when installed, and flushes cache.

It does not import WordPress core or wp-config.php into the local env.