> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Branches

> Entenda os branches no Partner Center: espaços de trabalho isolados por módulo para a configuração de Pacotes, Listagens da Store e Preços e disponibilidade.

No Partner Center, branches são espaços de trabalho separados para cada módulo compatível.

O branch **Main** é o branch padrão. Ele aparece automaticamente para todos os módulos quando você cria o produto. Você pode criar branches adicionais em cada módulo compatível: **Packages**, **Store listings** e **Pricing and availability**. Cada branch é exclusivo desse módulo. Por exemplo:

* Um branch Test em **Packages** é independente de um branch **Test** em **Store listings**.
* As alterações feitas no branch de um módulo não são refletidas automaticamente em outros módulos.

## Diferenças entre branches e sandboxes

[Sandboxes](/pt-BR/publishing/game-publishing/concepts/sandboxes) e branches têm finalidades diferentes, mas complementares, durante o desenvolvimento e a publicação.

* Use sandboxes como ambientes isolados onde você publica e testa seu produto. Elas controlam quem pode acessar seu jogo e onde ele é executado. Elas ajudam você a validar os XBOX services, as experiências da Store e as configurações de lançamento antes de entrar em produção.
* Use branches como espaços de trabalho de configuração dentro do Partner Center. Eles permitem criar e gerenciar diferentes versões das configurações do seu produto, como **Packages**, **Pricing and availability** e **Store listings**, sem afetar o que já está publicado.

Em resumo:

* Use branches para gerenciar alterações de configuração.
* Use sandboxes para publicar e testar essas alterações em um ambiente isolado.

## O que você pode e não pode fazer com branches

Os branches se aplicam somente aos módulos de configuração no Partner Center. Eles não criam identidades de produto nem ambientes separados.

Você pode:

* Manter várias versões das configurações, como **Pricing and availability** ou **Store listings**.
* Testar alterações em sandboxes de desenvolvimento sem afetar o conteúdo ativo.
* Enviar diferentes configurações para certificação.

Você não pode:

* Usar branches para isolar o comportamento em tempo de execução (use sandboxes para essa finalidade).
* Compartilhar branches entre módulos (cada módulo tem seus próprios branches).
* Publicar branches diferentes do Main na sandbox RETAIL.

## Usar branches para testar configurações diferentes

Use branches para definir e testar configurações diferentes para uso em sandboxes diferentes. Por exemplo, para testar alterações de preço sem substituir sua configuração publicada, crie um novo branch em **Pricing and availability** chamado **New pricing**, importe suas configurações atuais do branch **Main** e faça as alterações desejadas no novo branch. Você pode importar as alterações para o branch Main quando estiver pronto para publicá-las.

### Importar configurações de outro branch

A importação copia a configuração do seu branch para o branch Main desse módulo. O comportamento é diferente para alguns módulos.

* **Packages** e **Pricing and availability** oferecem suporte a importações diretas de outro branch.
* **Store listings** oferece suporte à exportação para um arquivo .csv, que você pode importar para outro branch. Não é possível importar diretamente de outro branch.

## Comportamento dos branches na certificação e na publicação

A disponibilidade dos branches é diferente entre **Certificar** e **Publicar** um produto.

* Ao enviar um produto para certificação, você pode especificar o branch de cada módulo.
* Ao publicar um produto, a disponibilidade dos branches depende do destino da publicação:
  * Você só pode publicar o branch **Main** na sandbox **RETAIL**.
  * Você pode publicar todos os branches em sandboxes de desenvolvimento.

## Nomear e gerenciar branches

Use nomes claros e descritivos para os branches, para que você possa acompanhar a finalidade de cada um.

Por exemplo:

* Development
* Internal QA
* Certification staging

Exclua ou reutilize branches quando eles não forem mais necessários para manter seu espaço de trabalho gerenciável.

## Exemplo de fluxo de trabalho

Você pode usar branches e sandboxes juntos para testar alterações com segurança.

Por exemplo:

<Steps>
  <Step title="Crie um novo branch em **Packages** para carregar builds atualizados do jogo.">
    Crie um novo branch em **Packages** para carregar builds atualizados do jogo.
  </Step>

  <Step title="Crie um novo branch em **Store listings** para atualizar descrições e imagens.">
    Crie um novo branch em **Store listings** para atualizar descrições e imagens.
  </Step>

  <Step title="Publique esses branches em uma sandbox de desenvolvimento.">
    Publique esses branches em uma sandbox de desenvolvimento.
  </Step>

  <Step title="Teste a experiência combinada na sandbox.">
    Teste a experiência combinada na sandbox.
  </Step>

  <Step title="Importe as alterações validadas para o branch **Main** de cada módulo.">
    Importe as alterações validadas para o branch **Main** de cada módulo.
  </Step>

  <Step title="Publique na sandbox RETAIL quando estiver pronto.">
    Publique na sandbox RETAIL quando estiver pronto.
  </Step>
</Steps>

## Consulte também

* [Sandboxes](/pt-BR/publishing/game-publishing/concepts/sandboxes)


## Related topics

- [Branches](/publishing/game-publishing/concepts/branches.md)
- [Packages](/publishing/game-publishing/concepts/game-package-management.md)
- [Sandboxes](/publishing/game-publishing/concepts/sandboxes.md)
- [Packages (classic experience)](/publishing/game-publishing/concepts/packages-overview.md)
- [MSIXVC2 packaging overview](/build/core-features/common/packaging/overviews/packaging-msixvc2-overview.md)
