Todas as coleções

Savepoints e branches

Use savepoint, branch e merge para gerenciar o estado da branch do lado do Bubble a partir da CLI.

Savepoints

Savepoints são pontos de restauração do editor do Bubble para o workspace da branch atual. Crie um antes de um apply arriscado ou de uma grande refatoração.

buildprint savepoint create "before checkout refactor"
buildprint savepoint list
buildprint savepoint list --json
buildprint savepoint restore 1745068712345

create requer uma descrição. list imprime o timestamp, a descrição e o e-mail quando disponíveis. restore restaura a branch atual do Bubble para o timestamp informado.

Após a restauração, execute:

buildprint sync

A CLI lembra você de sincronizar porque o estado do editor do Bubble mudou remotamente e seus arquivos locais precisam ser atualizados para ficarem em conformidade.

Inspecionar branches

branch lê as versões do app Bubble. Execute-o dentro de um workspace de branch ou passe o id do app explicitamente.

buildprint branch
buildprint branch staging
buildprint branch <appId> staging
buildprint branch <appId> <branchId>
buildprint branch --json

Sem argumentos dentro de um workspace, branch mostra a branch atual. Com um argumento dentro de um workspace, ele trata o valor como um nome ou id de branch. Com dois argumentos, o primeiro é o id do app e o segundo é o seletor da branch.

Listar branches

buildprint branch list <appId>
buildprint branch list <appId> --json

Use isso antes de clonar ou criar branches para saber os nomes e ids exatos que seu token pode acessar.

Criar branches

buildprint branch create "feature-checkout"
buildprint branch create <appId> "feature-checkout"
buildprint branch create <appId> new-flow --from staging
buildprint branch create "hotfix" --description "urgent fix" --json
buildprint branch create "experiment" --from test --no-workspace-sync

Dentro de um workspace de branch ou da raiz do app, você pode omitir o id do app e passar apenas o nome da nova branch. Fora de um workspace, passe o id do app primeiro.

Flags úteis:

  • --from <version> escolhe a branch de origem. O padrão é test.

  • --description <text> adiciona uma descrição à branch do Bubble.

  • --json imprime a resposta completa da API e pula a materialização do workspace local.

  • --no-workspace-sync evita a criação ou sincronização de um workspace local após a criação da branch.

Os nomes das branches são normalizados pelo servidor, incluindo ajuste de espaços, conversão para letras minúsculas e conversão de espaços em hífens.

--from live não é permitido. Crie branches editáveis a partir de test, staging ou outra branch não-live que seu token possa ler.

Realizar o merge de branches do Bubble

merge usa o fluxo de merge nativo do Bubble para mesclar uma branch do Bubble em outra:

buildprint merge feature-a test
buildprint merge lemonb-820 staging
buildprint merge feature-a test --json

O comando deve ser executado dentro de um workspace de app Buildprint para que ele possa resolver o id do app. Antes de um merge não-JSON, o Buildprint sincroniza os workspaces de revisão locais existentes para a origem e o destino quando possível.

Se o Bubble relatar conflitos, a CLI imprimirá as chaves de conflito. Resolva-as escolhendo o valor da branch de destino (to) ou o valor da branch de origem (from):

buildprint merge feature-a test --resolve 0=from
buildprint merge feature-a test --resolve 0=from --resolve 1=to
buildprint merge feature-a test --resolve-all to

Após um merge bem-sucedido, o Buildprint sincroniza um workspace de destino local existente, quando disponível. Se você mantiver uma pasta de branch de destino aberta, inspecione-a após o merge e execute buildprint sync se precisar atualizar manualmente.

Falhas de permissão

Os comandos de branch e merge usam o token da CLI vinculado. Se uma branch de origem não estiver visível para esse token, o comando falhará com uma mensagem de permissão. Crie a partir de uma branch que o token possa ler ou atualize as permissões de colaborador do Bubble para o app.

Isso foi útil?