# Início Rápido para solicitações de pull empilhadas

Instale a gh stack extensão GitHub CLI e crie seu primeiro conjunto de solicitações de pull empilhadas.

> \[!NOTE] This feature is in public preview and subject to change.

Use solicitações de pull empilhadas para interromper grandes alterações de código em uma cadeia de solicitações de pull menores e dependentes que você pode examinar e mesclar independentemente.

Uma pilha é uma série de solicitações de pull no mesmo repositório em que cada solicitação de pull direciona o branch da solicitação de pull abaixo dela, formando uma cadeia ordenada que cai em um único branch, normalmente seu branch principal. Em vez de uma solicitação de pull grande, você obtém um conjunto de solicitações de pull menores. Como cada solicitação de pull tem sua própria diferença de foco, os colegas de equipe podem examinar e aprovar cada camada de forma independente.

## Prerequisites

* GitHub CLI (`gh`) 2.90.0 ou posterior e Git 2.20 ou posterior.
  * Autenticar GitHub CLI com `gh auth login`.
* Um GitHub repositório para o qual você pode enviar por push.

## Instalar a extensão da CLI

```shell copy
gh extension install github/gh-stack
```

> \[!TIP]
> Para usar solicitações de pull empilhadas com agentes de codificação de IA, como GitHub Copilot, instale a `gh-stack` habilidade.
>
> ```shell copy
> gh skill install github/gh-stack
> ```

## Criar sua primeira pilha

1. Para inicializar uma pilha, navegue até o repositório e execute o comando a seguir. Isso cria uma entrada de acompanhamento e sua primeira ramificação.

   ```shell copy
   gh stack init
   ```

   Você será solicitado a nomear sua primeira ramificação. Por padrão, a pilha usa o branch padrão do repositório (por exemplo, `main`) como o tronco, mas uma pilha pode ser direcionada a qualquer branch.

2. Trabalhe em sua primeira ramificação como de costume: escrever código, preparar alterações e confirmar.

   ```shell
   # ... write code ...
   git add .
   git commit -m "helpful-commit-message"
   ```

3. Quando estiver pronto para a próxima unidade lógica de trabalho, adicione um novo branch à parte superior da pilha.

   ```shell copy
   gh stack add BRANCH-NAME
   # ... write code ...
   git add .
   git commit -m "Another-helpful-commit-message"
   ```

4. Efetue push de todos os branches para o remoto.

   ```shell copy
   gh stack push
   ```

5. Crie solicitações de pull e vincule-as como uma pilha.GitHub

   ```shell copy
   gh stack submit
   ```

   Cada solicitação de pull é criada com o branch base correto. Sua primeira ramificação é direcionada `main`e a próxima ramificação `BRANCH-NAME` tem como destino a primeira ramificação. Os revisores verão apenas a diferença para essa camada. As solicitações de pull são vinculadas automaticamente como uma pilha e GitHub você pode ver sua ordem e navegar rapidamente entre elas.

6. Exiba a pilha e veja o estado completo a qualquer momento.

   ```shell copy
   gh stack view
   ```

   Esse comando mostra todos os branches, seus links de solicitação de pull, status e a confirmação mais recente em cada um.

7. Use `gh stack add -Am "MESSAGE"` para preparar todas as alterações, confirmar e criar a próxima ramificação em uma etapa. Você não precisará de um separado `git add` ou `git commit`. Se o branch atual ainda não tiver confirmações, a confirmação chegará lá; se ele já tiver confirmações, um novo branch será criado.

   ```shell
   # Commit lands on the current branch
   gh stack add -Am "Auth middleware"

   # Current branch already has commits, so this creates the next branch
   gh stack add -Am "API routes"
   ```

8. Quando estiver pronto, envie tudo por push e crie as solicitações de pull.

   ```shell copy
   gh stack submit
   ```

## Próximas Etapas 

* [Managing stacked pull requests](/pt/enterprise-cloud@latest/pull-requests/how-tos/create-pull-requests/managing-stacked-pull-requests)
* [Merging stacked pull requests](/pt/enterprise-cloud@latest/pull-requests/how-tos/merge-and-close-pull-requests/merging-stacked-pull-requests)
* [Stack AI-generated code in pull requests](/pt/enterprise-cloud@latest/copilot/tutorials/stack-ai-generated-code-in-pull-requests)
* [Distribuir solicitações de pull empilhadas para sua organização](/pt/enterprise-cloud@latest/pull-requests/tutorials/roll-out-stacked-prs)