Managing changes and syncing
Managing changes and syncing
Buildprint works best when you treat it like a local branch workflow: sync, edit, review, validate, and apply.
Recommended loop
Start in the branch workspace and run
buildprint syncto pull the latest Bubble snapshot.Edit the files you need.
Review your work with
git statusandgit diff.Run
buildprint checkbefore you apply.Commit your changes.
buildprint applyexpects a clean worktree.If Bubble changed while you were working, run
buildprint syncagain and resolve any merge conflicts.Optionally preview the result with
buildprint apply --dry-run, then runbuildprint apply.
How sync behaves
It fetches the latest Bubble snapshot for the current branch and brings it into your workspace.
If your local branch has no conflicting changes, sync can be a no-op, a fast-forward, or a normal merge.
If there are conflicts, you get ordinary git conflict markers in files. Resolve them, then
git addandgit commitas you would in any other repo.Use
buildprint sync --no-mergeif you want to fetch the latest snapshot first and merge it manually later.
How apply behaves
Apply sends your committed local changes back to Bubble.
It refuses to run if the worktree is dirty, because it applies the current committed state.
By default it also runs an internal check gate so obvious issues are caught before anything is sent.
If Bubble rejects the write because the base moved, sync again, resolve the drift, and retry.
Good habits
Keep commits small and reviewable.
Run
buildprint check --allif you want a full workspace pass instead of only changed files.Use
buildprint tree <target>when you need to understand a page or element structure before editing.After resolving conflicts, rerun checks before you apply.