# Создание запросов на вытягивание с накоплением

Создайте стек зависимых запросов на вытягивание с помощью gh stack расширения или GitHub CLI непосредственно на GitHub.

> \[!NOTE] Эта функция доступна в публичном предварительном просмотре и может измениться.

Создайте запросы на вытягивание с накоплением с расширением `gh stack` или GitHub CLI на GitHub веб-сайте.

> \[!NOTE]
> Запросы на вытягивание с накоплением требуют наличия всех ветвей в одном репозитории. Кросс-форковые стеки не поддерживаются.

## Создание стека с помощью GitHub CLI

1. Инициализация стека. Это создает и проверяет первую ветвь поверх ветви магистрали.

   ```shell copy
   gh stack init auth-layer
   ```

2. Напишите код для первого слоя, а затем выполните этап и зафиксируйте изменения.

   ```shell copy
   git add .
   git commit -m "helpful-commit-message"
   ```

3. Добавьте ветвь для следующей логической единицы работы. Новая ветвь создается поверх текущей.

   ```shell copy
   gh stack add BRANCH-NAME
   ```

4. Написание кода и фиксация в новой ветви. Повторите для каждого дополнительного слоя.

5. Отправьте все ветви в удаленный репозиторий и создайте запросы GitHubна вытягивание с накоплением.

   ```shell copy
   gh stack submit
   ```

   Каждый запрос на вытягивание создается с правильной базовой ветвью, поэтому рецензенты видят только дифф для этого слоя, а запросы на вытягивание автоматически связаны в виде стека.

## Создание стека с GitHub веб-сайта

Вы можете создать стек без интерфейса командной строки, задав базовую ветвь каждого запроса на вытягивание в ветвь под ней.

1. Создайте первый запрос на вытягивание, как правило. Как правило, база будет нацелена `main`.

2. Создайте следующий запрос на вытягивание и задайте ее базовую ветвь ветвь первого запроса на вытягивание. Выберите параметр **"Создать стек** ", чтобы связать два запроса на вытягивание в виде стека.

   После создания стек отображает связанные запросы на вытягивание.

   * Значок <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-stack" aria-label="The stack icon" role="img"><path d="M7.122.392a1.75 1.75 0 0 1 1.756 0l5.003 2.902c.83.481.83 1.68 0 2.162L8.878 8.358a1.75 1.75 0 0 1-1.756 0L2.119 5.456a1.251 1.251 0 0 1 0-2.162ZM8.125 1.69a.248.248 0 0 0-.25 0l-4.63 2.685 4.63 2.685a.248.248 0 0 0 .25 0l4.63-2.685ZM1.601 7.789a.75.75 0 0 1 1.025-.273l5.249 3.044a.248.248 0 0 0 .25 0l5.249-3.044a.75.75 0 0 1 .752 1.298l-5.248 3.044a1.75 1.75 0 0 1-1.756 0L1.874 8.814A.75.75 0 0 1 1.6 7.789Zm0 3.5a.75.75 0 0 1 1.025-.273l5.249 3.044a.248.248 0 0 0 .25 0l5.249-3.044a.75.75 0 0 1 .752 1.298l-5.248 3.044a1.75 1.75 0 0 1-1.756 0l-5.248-3.044a.75.75 0 0 1-.273-1.025Z"></path></svg> стека в верхней части запроса на вытягивание показывает число, указывающее, какой слой вы просматриваете.
   * Карта стека отображается в поле слияния. Он отображает каждый запрос на вытягивание в стеке и его состоянии, а также позволяет перейти к любому уровню с одним щелчком мыши.

3. Повторите для каждого дополнительного запроса на вытягивание, нацелив ветвь запроса на вытягивание перед ним.

## Преобразование существующих запросов на вытягивание в стек

Если у вас уже есть открытые запросы на вытягивание, ветви которых выстраиваются, где каждая ветвь запроса на вытягивание является головной ветвью запроса на вытягивание под ним, GitHub распознает цепочку и отображает **баннер рекомендаций** , предлагающий превратить их в стек.

1. В любом из подходящих запросов на вытягивание выберите баннер, чтобы открыть диалоговое окно, которое предварительно просматривает стек, перечисляя каждый запрос на вытягивание в порядке сверху вниз.

2. Просмотрите предварительный просмотр и подтвердите связывание запросов на вытягивание в стек.

После подтверждения карта стека отображается в заголовке каждого запроса на вытягивание.

## Добавление в существующий стек с GitHub веб-сайта

Чтобы добавить новый запрос на вытягивание в стек, который уже существует:

1. Откройте любой запрос на вытягивание в стеке, щелкните **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-stack" aria-label="The stack icon" role="img"><path d="M7.122.392a1.75 1.75 0 0 1 1.756 0l5.003 2.902c.83.481.83 1.68 0 2.162L8.878 8.358a1.75 1.75 0 0 1-1.756 0L2.119 5.456a1.251 1.251 0 0 1 0-2.162ZM8.125 1.69a.248.248 0 0 0-.25 0l-4.63 2.685 4.63 2.685a.248.248 0 0 0 .25 0l4.63-2.685ZM1.601 7.789a.75.75 0 0 1 1.025-.273l5.249 3.044a.248.248 0 0 0 .25 0l5.249-3.044a.75.75 0 0 1 .752 1.298l-5.248 3.044a1.75 1.75 0 0 1-1.756 0L1.874 8.814A.75.75 0 0 1 1.6 7.789Zm0 3.5a.75.75 0 0 1 1.025-.273l5.249 3.044a.248.248 0 0 0 .25 0l5.249-3.044a.75.75 0 0 1 .752 1.298l-5.248 3.044a1.75 1.75 0 0 1-1.756 0l-5.248-3.044a.75.75 0 0 1-.273-1.025Z"></path></svg>** заголовок и нажмите кнопку **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-plus" aria-label="Add button" role="img"><path d="M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2Z"></path></svg> "Добавить в стек**".

2. Базовая ветвь автоматически устанавливается в голову верхнего запроса на вытягивание. Выберите главную ветвь для нового запроса **на вытягивание и выберите команду "Создать запрос на вытягивание**".

3. Выберите **"<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-plus" aria-label="Add button" role="img"><path d="M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2Z"></path></svg>Добавить в стек**", чтобы создать запрос на вытягивание.

Новый запрос на вытягивание добавляется в верхнюю часть стека.

## Дополнительные материалы

* [Команды CLI с накоплением запросов на вытягивание](/ru/pull-requests/reference/stacked-prs-cli-commands)