# Управление pull-запросами с командой /pr

Используйте /pr команду слэш, чтобы просматривать, создавать и исправлять pull-запросы напрямую из Copilot CLI.

## Обзор

Команда слэш позволяет управлять полным жизненным циклом `/pr` pull request, не выходя из терминала. Вы можете проверять статус pull request, создавать новые pull requests и исправлять распространённые проблемы, такие как отзывы отзывов, конфликты слияний и сбои CI.

## Предпосылка

Вы, должно быть, работаете в репозитории Git, который размещается на GitHub.

## Подкоманды

У `/pr` команды слэш есть несколько подкоманд, которые вы можете использовать для выполнения различных действий по вашим pull requests.

> \[!NOTE]
> Все `/pr` подкоманды связаны с текущей ветвью — например, исправление неисправных проверок CI для pull-запроса, связанного с текущей веткой.

<!-- Use HTML tags rather than Markdown to avoid bad column width rendering. -->

<table>
<thead>
<tr>
<th style="width: 20%;">Используйте эту подкоманду</th>
<th style="width: 50%;">Чтобы сделать это</th>
<th style="width: 15%; text-align: center;">Требуется наличие существующего PR</th>
<th style="width: 15%; text-align: center;">Можно принять обязательство и продвигать</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<code>/pr</code> или <code>/pr view</code></td>
<td>Покажите статус pull request для текущей ветки. 
<a href="#viewing-pull-request-status">Узнайте больше</a></td>
<td align="center">Да</td>
<td align="center">Нет</td>
</tr>
<tr>
<td><code>/pr view web</code></td>
<td>Откройте pull request в браузере. 
<a href="#opening-the-pull-request-in-your-browser">Узнайте больше</a></td>
<td align="center">Да</td>
<td align="center">Нет</td>
</tr>
<tr>
<td><code>/pr create</code></td>
<td>Создайте или обновите pull request. 
<a href="#creating-a-pull-request">Узнайте больше</a></td>
<td align="center">Нет</td>
<td align="center">Да</td>
</tr>
<tr>
<td><code>/pr fix feedback</code></td>
<td>Обращайтесь к комментариям к пулл-запросу. 
<a href="#fixing-review-feedback">Узнайте больше</a></td>
<td align="center">Да</td>
<td align="center">Да</td>
</tr>
<tr>
<td><code>/pr fix conflicts</code></td>
<td>Синхронизируйте ветвь с базовой ветвью и разрешайте конфликты. 
<a href="#resolving-merge-conflicts">Узнайте больше</a></td>
<td align="center">Да</td>
<td align="center">Да</td>
</tr>
<tr>
<td><code>/pr fix ci</code></td>
<td>Диагностируйте и исправьте неудачные проверки CI. 
<a href="#fixing-ci-failures">Узнайте больше</a></td>
<td align="center">Да</td>
<td align="center">Да</td>
</tr>
<tr>
<td>
<code>/pr fix</code> или <code>/pr fix all</code></td>
<td>Запускайте все три этапа исправления по порядку: обратная связь, конфликты, затем CI. 
<a href="#fixing-all-issues-at-once">Узнайте больше</a></td>
<td align="center">Да</td>
<td align="center">Да</td>
</tr>
<tr>
<td><code>/pr auto</code></td>
<td>Создайте pull request, если нужно, затем пройдите все этапы исправления, пока все проверки pull request не пройдут. 
<a href="#automating-the-full-pull-request-workflow">Узнайте больше</a></td>
<td align="center">Нет</td>
<td align="center">Да</td>
</tr>
</tbody>
</table>

Подкоманды, которые фиксируют и отправляют изменения, будут запрашивать разрешение перед выполнением потенциально разрушительных действий, если только вы не разрешили эти инструменты заранее. Дополнительные сведения см. в разделе [Разрешение и отказ в использовании инструментов](/ru/copilot/how-tos/copilot-cli/use-copilot-cli/allowing-tools).

## Статус просмотра pull request

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

```copilot copy
/pr
```

### Открытие pull request в браузере

Если вы хотите видеть pull request включённо GitHub.com , а не в терминале, введите:

```copilot copy
/pr view web
```

Это открывает URL pull request в вашем браузере по умолчанию.

## Создание запроса на включение изменений

Чтобы создать pull request из вашей текущей ветки, введите:

```copilot copy
/pr create
```

Copilot Гарантирует, что все локальные коммиты отправляются в удалённый ответ, затем создаёт pull request. Если в репозитории существует шаблон pull-запроса, Copilot он следует при генерации названия и описания pull request.

Если pull request уже существует для текущей ветки, `/pr create` обновляйте существующий pull-запрос вместо создания нового.

### Добавление инструкций для создания pull-запросов

Вы можете добавить инструкции после `/pr create` этого.Copilot Рассмотрим пример.

```copilot copy
/pr create prefix the PR title 'Project X: '
```

## Исправление отзывов о отзывах

Чтобы прочитать Copilot и ответить на отзывы к вашему pull-request, введите:

```copilot copy
/pr fix feedback
```

Copilot Получает все потоки комментариев для просмотра в pull request, определяет, какие изменения запрашиваются, применяет изменения к вашей кодовой базе, а также коммитирует и отправляет исправления. Практические запросы на изменение кода имеют приоритет над разговорными комментариями.

## Разрешение конфликтов слияния

Чтобы синхронизировать ветку с базовой ветвью и разрешить конфликты слияния, введите:

```copilot copy
/pr fix conflicts
```

Copilot Получает последнюю базовую ветку, синхронизирует ветку, разрешает конфликты и отправляет результат.

### Выбор стратегии слияния

При разрешении Copilot CLI конфликтов нужно знать, стоит ли использовать стратегию ребейзинга или слияния. Если настройки не настроены, он Copilot предлагает выбрать команду, связанную с разрешением конфликтов.

Чтобы установить стандартную стратегию слияния, чтобы вас не подсказывали каждый раз, добавьте эту `mergeStrategy` опцию в ваш конфигурационный файл. Вы можете настроить это в настройках вашего личного пользователя или Copilotв настройках репозитория.

* **Настройки пользователя**: Добавьте `"mergeStrategy": "rebase"` или `"mergeStrategy": "merge"` в свой пользовательский конфигурационный файл (обычно `~/.copilot/settings.json`).
* **Настройки репозитория**: Добавьте ту же натуру `.github/copilot/settings.json` в корень репозитория.

## Исправление сбоев CI

Чтобы получить диагноз и исправить Copilot неудачные проверки CI, введите:

```copilot copy
/pr fix ci
```

Copilot выявляет неудачные задачи CI, анализирует логи для выявления коренных причин, применяет целенаправленные исправления и продвигает их. Затем он повторно проверяет статус CI и повторяет процесс до тех пор, пока проверки не пройдут или не определит, что дальнейший прогресс невозможен.

Если сбои не связаны с изменениями в ветке, Copilot чётко отмеьте это, чтобы принять соответствующие меры.

Вы можете добавить дополнительный контекст, чтобы Copilot сосредоточиться на конкретных ошибках. Рассмотрим пример.

```copilot copy
/pr fix ci focus on test failures
```

## Исправление всех проблем сразу

Чтобы устранить все нерешённые проблемы по pull-запросу в одной команде, введите:

```copilot copy
/pr fix
```

Это проходит по порядку трёх фаз:

1. **Отзывы —** Учитывают все комментарии к отзывам.
2. **Конфликты** — синхронизирует ветку с базовой веткой и разрешает любые конфликты.
3. **Отказы CI** — Диагностирует и исправляет непроваленные проверки CI.

## Автоматизация полного процесса pull request-запросов

Чтобы Copilot управлять всем процессом pull request от создания до полностью зелёного состояния, введите:

```copilot copy
/pr auto
```

Если для текущей ветки нет pull-запроса, Copilot сначала создаётся он. Затем он повторяется через фазы исправления — отзывы, конфликты и CI — повторяя, пока не останется никаких комментариев к обзору, нет конфликтов, и все проверки CI не проходят.

Вы можете добавить инструкции для создания pull request. Рассмотрим пример.

```copilot copy
/pr auto include migration notes in the description
```

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

* [Разрешение и отказ в использовании инструментов](/ru/copilot/how-tos/copilot-cli/use-copilot-cli/allowing-tools)
* [Проблемы с просмотром, pull-запросы и суть GitHub Copilot CLI](/ru/copilot/how-tos/copilot-cli/use-copilot-cli/browse-issues-prs-gists)
* [Справочник команды GitHub Copilot CLI](/ru/copilot/reference/copilot-cli-reference/cli-command-reference)