# /pr コマンドを使用したプル要求の管理

/prスラッシュ コマンドを使用して、Copilot CLIから直接 pull request を表示、作成、修正します。

## 概要

`/pr`スラッシュ コマンドを使用すると、ターミナルを離れることなく、完全な pull request ライフサイクルを管理できます。 pull request の状態を確認したり、新しいプルリクエストを作成したり、レビューのフィードバックを修正したり、マージコンフリクトやCIの失敗などの一般的な問題を解決することができます。

## 前提条件

GitHubでホストされている Git リポジトリで作業している必要があります。

## サブコマンド

`/pr`スラッシュ・コマンドには、pull request に対して異なるアクションを実行するために使用できるサブコマンドがいくつかあります。

> \[!NOTE]
> すべての `/pr` サブコマンドは、現在のブランチに関連しています。たとえば、現在のブランチに関連付けられているプル要求の失敗した CI チェックを修正します。

<!-- 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>現在のブランチのプル要求の状態を表示します。 
<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>pull request のレビューコメントに対応します。 
<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 の 3 つの修正フェーズをすべて順番に実行します。 
<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>必要に応じてプル要求を作成し、すべてのプル要求チェックが成功するまで、すべての修正フェーズをループ処理します。 
<a href="#automating-the-full-pull-request-workflow">詳細を見る</a></td>
<td align="center">いいえ</td>
<td align="center">はい</td>
</tr>
</tbody>
</table>

変更をコミットしてプッシュするサブコマンドは、これらのツールが事前に許可されていない限り、破壊的な可能性のあるアクションを実行する前にアクセス許可を求められます。 詳細については、「[ツールの使用の許可と拒否](/ja/copilot/how-tos/copilot-cli/use-copilot-cli/allowing-tools)」を参照してください。

## プル要求の状態の表示

現在のブランチに関連付けられているプル要求の状態を確認するには、対話型セッションで次のように入力します。

```copilot copy
/pr
```

### ブラウザーで pull request を開く

ターミナルではなく、 GitHub.com で pull request を表示する場合は、次のように入力します。

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

これにより、既定のブラウザーで pull request URL が開きます。

## pull request の作成

現在のブランチから pull request を作成するには、次のように入力します。

```copilot copy
/pr create
```

Copilot では、すべてのローカルコミットをリモートブランチにプッシュした後、プルリクエストを作成します。 プル要求テンプレートがリポジトリに存在する場合は、プル要求のタイトルと説明を生成するときに、 Copilot がそれに従います。

現在のブランチの pull request が既に存在する場合、 `/pr create` は新しいプル要求を作成するのではなく、既存のプル要求を更新します。

### pull request 作成の手順を追加する

`/pr create`後に指示を追加して、Copilotをガイドできます。 例えば次が挙げられます。

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

## レビューフィードバックの修正

Copilot に pull request のレビュー コメントを読み取ってアドレス指定するには、次のように入力します。

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

Copilot は、プルリクエスト内のすべてのレビューコメントスレッドを取得し、要求された変更を判断してコードベースに適用し、修正をコミットしてプッシュします。 操作可能なコード変更要求は、会話型コメントよりも優先されます。

## マージ競合の解決

ブランチをベースブランチと同期し、マージの競合を解決するには、以下のコマンドを入力してください。

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

Copilot は最新のベース ブランチを取得し、自分のブランチを同期化し、競合を解決し、結果をプッシュします。

### マージ戦略の選択

競合を解決する場合、 Copilot CLI はリベース戦略とマージ戦略のどちらを使用するかを把握する必要があります。 基本設定を構成していない場合は、競合の解決を伴うコマンドを実行するときに選択するように求めるメッセージが表示 Copilot 。

毎回プロンプトが表示されないように既定のマージ戦略を設定するには、 `mergeStrategy` 設定を構成ファイルに追加します。 これは、 Copilotの個人用ユーザー設定またはリポジトリ設定で設定できます。

* \*\*\*\*または`"mergeStrategy": "rebase"`をユーザー レベルの構成ファイル (通常は`"mergeStrategy": "merge"`) に追加します。
* **リポジトリの設定**: リポジトリ ルートに同じ設定を `.github/copilot/settings.json` に追加します。

## CI エラーの修正

失敗した CI チェックを診断して修正するには、Copilot を入力します。

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

Copilot は、失敗した CI ジョブを識別し、ログを分析して根本原因を特定し、対象の修正プログラムを適用してプッシュします。 その後、CI の状態を再チェックし、チェックに合格するか、それ以上の進行状況が不可能であると判断するまでプロセスを繰り返します。

障害がブランチの変更に関連しない場合は、適切なアクションを実行できるように、 Copilot この点を明確にメモします。

追加のコンテキストを追加して、特定のエラーに Copilot 集中することができます。 例えば次が挙げられます。

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

## すべての問題を一度に修正する

1 つのコマンドで pull request に関するすべての未処理の問題に対処するには、次のように入力します。

```copilot copy
/pr fix
```

これにより、次の 3 つのフェーズが順番に実行されます。

1. **レビュー フィードバック** — すべてのレビュー コメントに対処します。
2. **競合** - ブランチをベース ブランチと同期し、競合を解決します。
3. **CI エラー** — 失敗した CI チェックを診断して修正します。

## 完全な pull request ワークフローの自動化

Copilot に、pull request プロセス全体を作成から完全に緑色の状態に  管理してもらうには、次のように入力します。

```copilot copy
/pr auto
```

現在のブランチに対するプル要求が存在しない場合は、まずCopilotが作成します。 次に、修正フェーズ (レビュー フィードバック、競合、CI) をループ処理し、レビュー コメントがなくなり、競合がなく、すべての CI チェックが成功するまで繰り返します。

手順を追加して、プル要求の作成をガイドできます。 例えば次が挙げられます。

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

## 詳細については、次を参照してください。

* [ツールの使用の許可と拒否](/ja/copilot/how-tos/copilot-cli/use-copilot-cli/allowing-tools)
* [GitHub Copilot CLI の問題、プル要求、gist の閲覧](/ja/copilot/how-tos/copilot-cli/use-copilot-cli/browse-issues-prs-gists)
* [GITHUB COPILOT CLI コマンド リファレンス](/ja/copilot/reference/copilot-cli-reference/cli-command-reference)