

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Implantações de ramificação de atributo e fluxos de trabalho da equipe
<a name="multi-environments"></a>

O Amplify Hosting foi projetado para funcionar com ramificações de recursos e GitFlow fluxos de trabalho. O Amplify usa ramificações do Git para criar uma nova implantação sempre que você conecta uma nova ramificação ao seu repositório. Depois de conectar sua primeira ramificação, você cria ramificações de atributos adicionais.

**Para adicionar uma ramificação a uma aplicação**

1. Escolha a aplicação à qual você deseja adicionar a ramificação.

1. Escolha **Configurações da aplicação** e, em seguida, **Configurações da ramificação**.

1. Na página **Configurações da ramificação**, escolha **Adicionar ramificação**.

1. Selecione uma ramificação do seu repositório.

1. Escolha **Adicionar ramificação**.

1. Reimplante sua aplicação.

Depois de adicionar uma ramificação, seu aplicativo tem duas implantações disponíveis nos domínios padrão do Amplify, como e. *https://main.appid.amplifyapp.com*https://dev.appid.amplifyapp.com** Isso pode variar team-to-team, mas normalmente a **ramificação principal** rastreia o código de lançamento e é sua ramificação de produção. A **ramificação de desenvolvimento** é usada como uma ramificação de integração para testar novos atributos. Isso permite aos testadores da versão beta o teste de atributos não lançados na implantação da ramificação de desenvolvimento, sem afetar nenhum usuário final de produção na implantação da ramificação principal.

**Topics**
+ [

# Fluxos de trabalho de equipe com aplicações Amplify Gen 2 full-stack
](team-workflows-gen2.md)
+ [

# Fluxos de trabalho de equipe com aplicações Amplify Gen 1 full-stack
](team-workflows-with-amplify-cli-backend-environments.md)
+ [

# Implantações de ramificação de atributo com base em padrão
](pattern-based-feature-branch-deployments.md)
+ [

# Geração automática em tempo de compilação da configuração do Amplify (somente aplicações Gen 1)
](amplify-config-autogeneration.md)
+ [

# Compilações condicionais de backend (somente aplicações Gen 1)
](conditional-backends.md)
+ [

# Use backends do Amplify em todas as aplicações (somente aplicações Gen 1)
](reuse-backends.md)

# Fluxos de trabalho de equipe com aplicações Amplify Gen 2 full-stack
<a name="team-workflows-gen2"></a>

AWS O Amplify Gen 2 apresenta uma experiência de desenvolvedor TypeScript baseada em código que prioriza a definição de back-ends. Para saber mais sobre fluxos de trabalho full-stack com as aplicações do Amplify Gen 2, consulte [Fluxos de trabalho full-stack](https://docs.amplify.aws/nextjs/deploy-and-host/fullstack-branching/) nos *Documentos do Amplify*.

# Fluxos de trabalho de equipe com aplicações Amplify Gen 1 full-stack
<a name="team-workflows-with-amplify-cli-backend-environments"></a>

A implantação de uma ramificação de atributos consiste em um ambiente de **frontend** e um ambiente de **backend** opcional. O frontend é construído e implantado em uma rede global de entrega de conteúdo (CDN), enquanto o backend é implantado pelo Amplify Studio ou pela CLI do Amplify para AWS. Para saber como configurar esse cenário de implantação, consulte [Compilação de um backend para uma aplicação](deploy-backend.md).

O Amplify Hosting implanta continuamente recursos de back-end, como funções GraphQL APIs e Lambda, com suas implantações de ramificações de recursos. É possível usar os seguintes modelos de ramificação para implantar seu backend e frontend com Amplify Hosting.

## Fluxo de trabalho de ramificação de atributo
<a name="standard"></a>
+ Crie os ambientes de backend **prod**, **test** e **dev** com a Amplify CLI.
+ Mapeie o backend do **produto** para a ramificação **principal**. 
+ Mapeie o backend de **teste** para a ramificação de **desenvolvimento**.
+ Os membros da equipe podem usar o ambiente de backend de **desenvolvimento** para testar ramificações de **atributos** individuais.

![\[Um diagrama que mostra como mapear relacionamentos de ambientes de backend para ramificações de frontend.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/FeatureBranchWorkflow.png)


1. Instale a Amplify CLI para inicializar um novo projeto do Amplify.

   ```
   npm install -g @aws-amplify/cli
   ```

1. Inicialize um ambiente de backend *prod* para o seu projeto. Se você não tiver um projeto, crie um usando ferramentas de bootstrap como create-react-app ou Gatsby.

   ```
   create-react-app next-unicorn
   cd next-unicorn
   amplify init
    ? Do you want to use an existing environment? (Y/n): n
    ? Enter a name for the environment: prod
   ...
   amplify push
   ```

1. Adicione os ambientes de backend *test* e *dev*.

   ```
   amplify env add
    ? Do you want to use an existing environment? (Y/n): n
    ? Enter a name for the environment: test
   ...
   amplify push
   
   amplify env add
    ? Do you want to use an existing environment? (Y/n): n
    ? Enter a name for the environment: dev
   ...
   amplify push
   ```

1. Envie o código para um repositório Git de sua escolha (neste exemplo, vamos supor que você enviou para o principal).

   ```
   git commit -am 'Added dev, test, and prod environments'
   git push origin main
   ```

1. Visite Amplify no Console de gerenciamento da AWS para ver seu ambiente de back-end atual. Navegue um nível acima no rastro de navegação para ver uma lista de todos os ambientes de backend criados na guia **Ambientes de backend**.  
![\[O console do Amplify mostrando os ambientes de backend associados a uma aplicação do Amplify.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/reuse-backend-5.png)

1. Mude para a guia **Ambientes de frontend** e conecte seu provedor de repositório e a ramificação *principal*.

1. Na página de configurações de compilação, selecione um ambiente de backend existente para configurar a implantação contínua com a ramificação principal. Escolha *prod* na lista e conceda o perfil de serviço para o Amplify. Escolha **Salvar e implantar**. Após a conclusão da compilação, você terá uma implantação da filial principal disponível em *https://main.appid.amplifyapp.com*.  
![\[A página Definir configurações de compilação com uma lista de backends existentes.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/reuse-backend-2.png)

1. Conecte a ramificação *develop* no Amplify (presuma que as ramificações *develop* e *principal* são as mesmas nesse ponto). Escolha o ambiente de backend *test*.  
![\[A página Adicionar ramificação do repositório com um ambiente de ramificação e backend selecionado.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/reuse-backend-4.png)

1. O Amplify agora está configurado. É possível começar a trabalhar em novos atributos em um atributo de atributo. Adicione a funcionalidade de backend usando o ambiente de backend *dev* na sua estação de trabalho local.

   ```
   git checkout -b newinternet
   amplify env checkout dev
   amplify add api
   ...
   amplify push
   ```

1. Quando terminar de trabalhar no atributo, confirme seu código, crie uma solicitação pull para revisar internamente.

   ```
   git commit -am 'Decentralized internet v0.1'
   git push origin newinternet
   ```

1. Para visualizar como serão as alterações, acesse o console do Amplify e conecte a ramificação de atributo. Nota: Se você tiver o AWS CLI instalado em seu sistema (não na CLI do Amplify), você pode conectar uma ramificação diretamente do seu terminal. Para encontrar o ID do aplicativo, vá até Configurações do aplicativo > Geral > ARN do aplicativo: *arn:aws:amplify:<region>:<region>:apps/<appid>* 

   ```
   aws amplify create-branch --app-id <appid> --branch-name <branchname>
   aws amplify start-job --app-id <appid> --branch-name <branchname> --job-type RELEASE
   ```

1. Seu recurso estará acessível em *https://newinternet.appid.amplifyapp.com*para compartilhar com seus colegas de equipe. Se tudo estiver aparentemente correto, mescle o PR à ramificação de desenvolvimento.

   ```
   git checkout develop
   git merge newinternet
   git push
   ```

1. Isso iniciará uma compilação que atualizará o back-end e o front-end no Amplify com uma implantação de ramificação em. *https://dev.appid.amplifyapp.com* É possível compartilhar esse link com partes interessadas, para que possam revisar o novo atributo.

1. Exclua sua ramificação de atributos do Git, Amplify e remova o ambiente de backend da nuvem (você sempre pode criar executando ‘amplify env checkout prod’ e executando ‘amplify env add’).

   ```
   git push origin --delete newinternet
   aws amplify delete-branch --app-id <appid> --branch-name <branchname>
   amplify env remove dev
   ```

## GitFlow fluxo de trabalho
<a name="gitflow"></a>

GitFlow usa duas ramificações para registrar o histórico do projeto. A ramificação *principal* rastreia somente o código de lançamento, e a ramificação de *desenvolvimento* é usada como uma ramificação de integração para novos recursos. GitFlow simplifica o desenvolvimento paralelo ao isolar o novo desenvolvimento do trabalho concluído. O novo desenvolvimento (como atributos e correções de erros não emergenciais) é feito em ramificações de *atributo*. Quando o desenvolvedor estiver satisfeito com o código e entender que ele está pronto para o lançamento, a ramificação de *atributo* será mesclada com a ramificação de *desenvolvimento* de integração. As únicas confirmações para a ramificação principal são as mesclagens de ramificações *release* e ramificações *hotfix* (para corrigir erros emergenciais).

O diagrama abaixo mostra uma configuração recomendada com GitFlow. É possível seguir o mesmo processo descrito na seção de fluxo de trabalho de ramificação de atributo acima.

![\[Um diagrama que mostra uma configuração recomendada com GitFlow.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/GitflowWorkflow.png)


## Sandbox de desenvolvedor
<a name="sandbox"></a>
+ Cada desenvolvedor em uma equipe cria um ambiente de sandbox na nuvem, separado do computador local. Isso permite que os desenvolvedores trabalhem em isolamento uns dos outros sem substituir as alterações de outros membros da equipe.
+ Cada ramificação no Amplify tem seu próprio backend. Isso garante que o Amplify use o repositório do Git como uma fonte única da verdade a partir da qual implantar alterações, em vez de depender que os desenvolvedores da equipe enviem manualmente o backend ou frontend para a produção a partir do computador local deles.

![\[Um diagrama que mostra um fluxo de trabalho de sandbox por desenvolvedor.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/AmplifySandboxWorkflow.png)


1. Instale a Amplify CLI para inicializar um novo projeto do Amplify.

   ```
   npm install -g @aws-amplify/cli
   ```

1. Inicialize um ambiente de backend *mary* para o seu projeto. Se você não tiver um projeto, crie um usando ferramentas de bootstrap como create-react-app ou Gatsby.

   ```
   cd next-unicorn
   amplify init
    ? Do you want to use an existing environment? (Y/n): n
    ? Enter a name for the environment: mary
   ...
   amplify push
   ```

1. Envie o código para um repositório Git de sua escolha (neste exemplo, vamos supor que você enviou para o principal).

   ```
   git commit -am 'Added mary sandbox'
   git push origin main
   ```

1. Conecte seu repo > *principal* ao Amplify.

1. O console do Amplify detecta ambientes de backend criados pela Amplify CLI. Escolha *Criar novo ambiente* no menu suspenso e conceda a perfil de serviço para o console do Amplify. Escolha **Salvar e implantar**. Após a conclusão da compilação, você terá uma implantação de ramificação principal disponível em *https://main.appid.amplifyapp.com*um novo ambiente de back-end vinculado à ramificação.

1. Conecte a ramificação *desenvolver* no Amplify (presuma que as ramificações *desenvolver* e *principal* são as mesmas nesse ponto) e escolha *Criar*

# Implantações de ramificação de atributo com base em padrão
<a name="pattern-based-feature-branch-deployments"></a>

As implantações de ramificação com base em padrão permitem que você implante automaticamente ramificações que associem um padrão específico ao Amplify. As equipes de produto que usam ramificações de recursos ou GitFlow fluxos de trabalho para seus lançamentos agora podem definir padrões, como **release\$1\$1** implantar automaticamente ramificações do Git que começam com 'release' em uma URL compartilhável.

1. Escolha **Configurações da aplicação** e, em seguida, **Configurações da ramificação**.

1. Na página **Configurações da ramificação**, selecione **Editar**.

1. Selecione **Detecção automática de ramificações** para conectar automaticamente as ramificações ao Amplify que correspondam a um conjunto de padrões.

1. Na caixa **Detecção automática de ramificações - padrões**, insira os padrões para implantação automática de ramificações.
   + **\$1** – Implantar todas as ramificações no seu repositório.
   + **release\$1**: implanta todas as ramificações iniciadas pela palavra "release".
   + **release\$1/** – Implantar todas as ramificações que correspondem a um padrão “release /”.
   + Especifique vários padrões em uma lista separada por vírgulas. Por exemplo, .**release\$1, feature\$1**

1. Configure a proteção de senha automática para todas as ramificações que são criadas automaticamente selecionando **Controle de acesso de detecção automática da ramificações**.

1. Para aplicações Gen 1 integradas a um backend do Amplify, é possível optar por criar um ambiente ou apontar todas as ramificações para um backend já existente.

1. Escolha **Salvar**.

## Implantações de ramificações de atributos baseadas em padrões para um aplicativo conectado a um domínio personalizado
<a name="pattern-based-feature-branch-deployments-for-an-app-connected-to-a-custom-domain"></a>

É possível usar implantações de ramificações de atributos baseadas em padrões para um aplicativo conectado a um domínio personalizado do Amazon Route 53. 
+ Para obter instruções de configuração de implantações de ramificações de atributos baseadas em padrões, consulte [Configuração de subdomínios automáticos para um domínio personalizado do Amazon Route 53](to-set-up-automatic-subdomains-for-a-Route-53-custom-domain.md)
+ Para obter instruções sobre como conectar um aplicativo Amplify a um domínio personalizado gerenciado no Route 53, consulte [Adição de um domínio personalizado gerenciado pelo Amazon Route 53](to-add-a-custom-domain-managed-by-amazon-route-53.md)
+ Para obter mais informações sobre o uso do Route 53, consulte [O que é o Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html).

# Geração automática em tempo de compilação da configuração do Amplify (somente aplicações Gen 1)
<a name="amplify-config-autogeneration"></a>

**nota**  
As informações nesta seção são somente para aplicações Gen 1. Se você quiser implantar automaticamente alterações de infraestrutura e código de aplicação a partir de ramificações de atributos para uma aplicação Gen 2, consulte [Implantações de ramificações full-stack](https://docs.amplify.aws/nextjs/deploy-and-host/fullstack-branching/branch-deployments/) na *Documentação do Amplify*

O Amplify oferece suporte à geração automática em tempo de compilação do arquivo de configuração `aws-exports.js`do Amplify para aplicações Gen 1. Ao desativar as implantações de CI/CD full-stack, você permite que seu aplicativo gere automaticamente o arquivo `aws-exports.js` e garante que as atualizações não sejam feitas em seu backend no momento da compilação.

**Para gerar automaticamente `aws-exports.js` no momento da construção**

1. Faça login no Console de gerenciamento da AWS e abra o console do [Amplify](https://console.aws.amazon.com/amplify/).

1. Escolha o aplicativo para editar.

1. Escolha a guia **Ambientes de hospedagem**.

1. Localize a ramificação a ser editada e escolha **Editar**.  
![\[A localização do link Editar de uma ramificação no console do Amplify.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/amplify_edit_backend_alternate.png)

1. Na página **Editar backend de destino**, desmarque **Habilitar implantações contínuas full-stack (CI/CD) para desativar a CI/CD** full-stack para esse backend.  
![\[A localização da caixa de seleção a ser desativada CI/CD no console do Amplify.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/amplify_turnoff_CICD.png)

1. Selecione um perfil de serviço existente para dar ao Amplify as permissões necessárias para fazer alterações no backend do seu aplicativo. Se precisar criar um perfil de serviço, escolha **Criar novo perfil**. Para obter mais informações sobre como criar um perfil de serviço, consulte [Adição de um perfil de serviço com permissões para implantar recursos de backend](amplify-service-role.md).

1. Escolha **Salvar**. O Amplify aplica essas alterações na próxima vez que você criar o aplicativo.

# Compilações condicionais de backend (somente aplicações Gen 1)
<a name="conditional-backends"></a>

**nota**  
As informações nesta seção são somente para aplicações Gen 1. O Amplify Gen 2 apresenta uma experiência de desenvolvedor TypeScript baseada e que prioriza o código. Portanto, esse atributo não é necessário para backends Gen 2.

O Amplify oferece suporte a construções condicionais de backend em todas as ramificações de uma aplicação Gen 1. Para configurar compilações de backend condicionais, defina a variável de ambiente `AMPLIFY_DIFF_BACKEND` como `true`. Habilitar compilações condicionais de backend ajudará a acelerar as compilações em que as alterações são feitas somente no frontend.

Quando você habilita compilações de backend baseadas em diff, no início de cada compilação, o Amplify tenta executar uma comparação na pasta em seu repositório `amplify`. Se o Amplify não encontrar nenhuma diferença, ele pula a etapa de compilação do backend e não atualiza seus atributos de backend. Se seu projeto não tiver uma pasta `amplify` no seu repositório, o Amplify ignorará o valor da variável de ambiente `AMPLIFY_DIFF_BACKEND`. Para obter instruções sobre como definir a variável de ambiente `AMPLIFY_DIFF_BACKEND`, consulte [Configuração de compilações de backend baseadas em diff para uma aplicação Gen 1](edit-build-settings.md#enable-diff-backend).

Se você atualmente tem comandos personalizados especificados nas configurações de compilação da sua fase de backend, as compilações condicionais de backend não funcionarão. Se quiser que esses comandos personalizados sejam executados, é necessário movê-los para a fase de frontend das configurações de compilação no arquivo `amplify.yml` do seu aplicativo. Para obter mais informações sobre como atualizar o arquivo `amplify.yml`, consulte [Referência de especificação de compilação](yml-specification-syntax.md).

# Use backends do Amplify em todas as aplicações (somente aplicações Gen 1)
<a name="reuse-backends"></a>

**nota**  
As informações nesta seção são somente para aplicações Gen 1. Se você quiser compartilhar recursos de backend para uma aplicação Gen 2, consulte [Compartilhar recursos entre ramificações](https://docs.amplify.aws/nextjs/deploy-and-host/fullstack-branching/share-resources/) nos *Documentos do Amplify*

O Amplify permite reutilizar facilmente os ambientes de backend existentes em todas as suas aplicações Gen 1 em uma determinada região. É possível fazer isso ao criar um aplicativo, conectar uma nova ramificação a um aplicativo existente ou atualizar um frontend existente para apontar para um ambiente de backend diferente.

## Reutilize backends ao criar um aplicativo
<a name="reuse-backends-create-connect"></a>

**Para reutilizar um backend ao criar um aplicativo Amplify**

1. Faça login no Console de gerenciamento da AWS e abra o console do [Amplify](https://console.aws.amazon.com/amplify/).

1. Para criar um backend para usar neste exemplo, faça o seguinte:

   1. No painel de navegação, selecione **Todos os apps**.

   1. Escolha **Novo aplicativo**, **Compile um aplicativo**.

   1. Insira um nome para o aplicativo, como **Example-Amplify-App**.

   1. Escolha **Confirmar implantação**.

1. Para conectar um frontend ao seu novo backend, escolha a guia **Ambientes de hospedagem.**

1. Escolha seu provedor git e escolha **Conectar ramificação**.

1. Na página **Adicionar ramificação do repositório**, em **Repositórios atualizados recentemente**, escolha o nome do seu repositório. Para **Ramificação**, selecione a ramificação do seu repositório para se conectar.

1. Na página **Configurações**, faça o seguinte:

   1. Em **Nome do aplicativo**, selecione o aplicativo a ser usado para adicionar um ambiente de backend. É possível escolher o aplicativo atual ou qualquer outro aplicativo na região atual.

   1. Em **Ambiente**, selecione o nome do ambiente de backend a ser adicionado. É possível usar um ambiente existente ou criar outro.

   1. Por padrão, a pilha completa CI/CD está desativada. Desativar o CI/CD de full-stack faz com que o aplicativo seja executado no modo *pull only.* No momento da compilação, o Amplify gerará automaticamente somente o arquivo `aws-exports.js`, sem modificar seu ambiente de backend.

   1. Selecione um perfil de serviço existente para dar ao Amplify as permissões necessárias para fazer alterações no backend do seu aplicativo. Se precisar criar um perfil de serviço, escolha **Criar novo perfil**. Para obter mais informações sobre como criar um perfil de serviço, consulte [Adição de um perfil de serviço com permissões para implantar recursos de backend](amplify-service-role.md).

   1. Escolha **Próximo**.

1. Escolha **Salvar e implantar**.

## Reutilize backends ao conectar uma ramificação a um aplicativo existente
<a name="reuse-backends-connect-branch"></a>

**Para reutilizar um backend ao conectar uma ramificação a um aplicativo Amplify existente**

1. Faça login no Console de gerenciamento da AWS e abra o console do [Amplify](https://console.aws.amazon.com/amplify/).

1. Escolha o aplicativo ao qual conectar uma nova filial.

1. No painel de navegação, em **Configurações do aplicativo**, selecione **Geral**.

1. Na seção **Ramificações**, escolha **Conectar uma ramificação**.

1. Na página **Adicionar ramificação do repositório**, em **Ramificação**, selecione a ramificação do seu repositório para se conectar.

1. Em **Nome do aplicativo**, selecione o aplicativo a ser usado para adicionar um ambiente de backend. É possível escolher o aplicativo atual ou qualquer outro aplicativo na região atual.

1. Em **Ambiente**, selecione o nome do ambiente de backend a ser adicionado. É possível usar um ambiente existente ou criar outro.

1. Se você precisar configurar um perfil de serviço para dar ao Amplify as permissões necessárias para fazer alterações no backend do seu aplicativo, o console solicitará que você execute essa tarefa. Para obter mais informações sobre como criar um perfil de serviço, consulte [Adição de um perfil de serviço com permissões para implantar recursos de backend](amplify-service-role.md).

1. Por padrão, a pilha completa CI/CD está desativada. Desativar o full-stack CI/CD faz com que o aplicativo seja executado no modo *pull only*. No momento da compilação, o Amplify gerará automaticamente somente o arquivo `aws-exports.js`, sem modificar seu ambiente de backend.

1. Escolha **Próximo**.

1. Escolha **Salvar e implantar**.

## Edite um frontend existente para apontar para um backend diferente
<a name="reuse-backends-edit-existing"></a>

**Para editar um aplicativo Amplify de frontend para apontar para um backend diferente**

1. Faça login no Console de gerenciamento da AWS e abra o console do [Amplify](https://console.aws.amazon.com/amplify/).

1. Escolha o aplicativo para o qual editar o backend.

1. Escolha a guia **Ambientes de hospedagem**.

1. Localize a ramificação a ser editada e escolha **Editar**.  
![\[A localização do link Editar de uma ramificação no console do Amplify.\]](http://docs.aws.amazon.com/pt_br/amplify/latest/userguide/images/amplify_edit_backend.png)

1. Na página **Selecionar um ambiente de backend para usar com essa ramificação**, em **Nome do aplicativo**, selecione o aplicativo de frontend para o qual você deseja editar o ambiente de backend. É possível escolher o aplicativo atual ou qualquer outro aplicativo na região atual.

1. Em **Ambiente de backend**, selecione o nome do ambiente de backend a ser adicionado.

1. Por padrão, o full-stack CI/CD está habilitado. Desmarque essa opção para desativar a pilha completa CI/CD desse back-end. Desativar o full-stack CI/CD faz com que o aplicativo seja executado no modo *pull only*. No momento da compilação, o Amplify gerará automaticamente somente o arquivo `aws-exports.js`, sem modificar o ambiente de backend.

1. Escolha **Salvar**. O Amplify aplica essas alterações na próxima vez que você criar o aplicativo.