---
url: 'https://dxpr.com/pt-pt/hc/documentation/learn-dxpr-builder/advanced/version-control'
title: 'Controlo de versões | DXPR'
author:
  name: Jurriaan
  url: 'https://dxpr.com/users/jurriaan'
date: '2026-10-24T11:45:17+00:00'
copyright: 'Copyright DXPR. All rights reserved.'
type: article
summary: |-
  As definições, modelos e perfis do DXPR Builder são configuração
  do Drupal, por isso vão para o git com o resto da
  configuração. As páginas são conteúdo e ficam na base de dados. Esta
  página enumera o que é o quê e como mover cada um entre
  ambientes.
tags:
  - 'Run it in production'
image: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
published: true
og:
  site_name: DXPR
  updated_time: '2026-10-24T11:45:17+0000'
  'image:alt': 'DXPR, powered by Drupal: AI-powered Drupal for marketers.'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      mainEntity: {  }
    -
      '@type': TechArticle
      headline: 'Controlo de versões'
      description: |-
        As definições, modelos e perfis do DXPR Builder são configuração
        do Drupal, por isso vão para o git com o resto da
        configuração. As páginas são conteúdo e ficam na base de dados. Esta
        página enumera o que é o quê e como mover cada um entre
        ambientes.
      image:
        '@type': ImageObject
        url: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
        width: '1200'
        height: '630'
      datePublished: '2026-10-24T11:45:17+0000'
      dateModified: '2026-10-24T11:45:17+0000'
      author:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      mainEntityOfPage: 'https://dxpr.com/pt-pt/hc/documentation/learn-dxpr-builder/advanced/version-control'
      articleSection: 'Operar em produção'
    -
      '@type': WebPage
      '@id': 'https://dxpr.com/pt-pt/hc/documentation/learn-dxpr-builder/advanced/version-control'
      description: |-
        As definições, modelos e perfis do DXPR Builder são configuração
        do Drupal, por isso vão para o git com o resto da
        configuração. As páginas são conteúdo e ficam na base de dados. Esta
        página enumera o que é o quê e como mover cada um entre
        ambientes.
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: Início
            item: 'https://dxpr.com/pt-pt'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
      inLanguage: pt-pt
---
[Centro de ajuda](/pt-pt/node/75)/[Documentação](/pt-pt/hc/documentation) /[Aprender DXPR Builder](/pt-pt/hc/documentation/learn-dxpr-builder) /[Gerir o site](/pt-pt/hc/documentation/learn-dxpr-builder/manage) /[Operar em produção](/pt-pt/hc/documentation/learn-dxpr-builder/manage/production) # Controlo de versões.

 Aprender DXPR BuilderGerir o siteOperar em produção

   ## Neste guia

 Guias relacionados

- [Integração CI/CD](/pt-pt/hc/documentation/learn-dxpr-builder/advanced/ci-cd)

As definições, modelos e perfis do DXPR Builder são configuração do Drupal, por isso vão para o git com o resto da configuração. As páginas são conteúdo e ficam na base de dados. Esta página enumera o que é o quê e como mover cada um entre ambientes.

## O que vai para o controlo de versões

| Type | Version controlled | How |
|---|---|---|
| Definições | Sim, quando a chave de produto está numa chave | Exportação de configuração; ver abaixo |
| Modelos de página | Sim | Entidades de configuração |
| Modelos de utilizador | Sim | Entidades de configuração |
| Perfis de utilizador | Sim | Entidades de configuração |
| Chave de produto | Apenas sem o valor | Entidade Key; ver abaixo |
| Conteúdo de página | Normalmente não | Guardado na base de dados |
| Ficheiros carregados | Normalmente não | Guardados no diretório de ficheiros |

## Gestão de configuração

Exporte a configuração:

```bash
drush config:export

```

Isto escreve estes ficheiros do DXPR Builder no diretório de sincronização, muitas vezes `config/sync/`:

- `dxpr_builder.settings.yml`
- `dxpr_builder.page_template.*.yml`
- `dxpr_builder.user_template.*.yml`
- `dxpr_builder.dxpr_builder_profile.*.yml`
- `key.key.dxpr_builder_jwt.yml`, ou a entidade Key selecionada para a chave de produto

**Important:** com o **Configuration storage** predefinido, `dxpr_builder.settings.yml` guarda a chave de produto em texto claro, como `json_web_token`. Antes de registar esse ficheiro, defina **Storage method** como **Key module** em **DXPR Studio** &gt; **DXPR Builder** &gt; **General Settings** (`/admin/dxpr_studio/dxpr_builder/settings`). Escolha uma chave cujo fornecedor lê uma variável de ambiente ou um ficheiro; guardar o formulário limpa depois `json_web_token`. Uma chave com o fornecedor **Configuration** continua a guardar o valor no próprio ficheiro exportado, por isso mude primeiro o fornecedor em **Configuration** &gt; **System** &gt; **Keys** (`/admin/config/system/keys`). Depois exporte outra vez e registe estes ficheiros no repositório.

## Implementar configuração

No ambiente de destino:

```bash
drush config:import
drush cache:rebuild

```

Isto aplica definições, modelos e perfis do controlo de versões.

## Conteúdo entre ambientes

O conteúdo de página (o HTML em campos de texto) é conteúdo de base de dados, não configuração. Para o mover:

- Use o módulo **Default Content** para exportar e importar conteúdo como YAML.
- Use **Content Synchronization** para sincronização contínua de conteúdo entre ambientes.
- Mova a marcação de uma página com Drush: `drush dxb:page:get 42` imprime-a em `markup` em YAML, e `drush dxb:page:update 42 --markup=@page.html` escreve-a numa página no destino, como nova revisão.

## Fluxo de trabalho para equipas

1. Os programadores criam modelos de página localmente.
2. Exporte a configuração e registe.
3. Envie para o repositório.
4. Implemente em encenação para revisão.
5. Implemente em produção após aprovação.

## O que se segue?

[Pipelines de CI/CD para implementação automatizada](/hc/documentation/learn-dxpr-builder/advanced/ci-cd) para continuar a explorar o DXPR Builder.