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

# AI で競合を解決する

> マージ競合のあるテキストファイルに対して AI に解決案を提案させ、マージを完了する前にその結果を確認します。

マージ、更新、またはリバートでテキストファイルに競合がある場合、AI が競合を解決できます。AI はファイルごとに、両方のバージョン、それらの元になったバージョン、両側のコミットメッセージを読み取ります。そのうえで、両方の変更の意図を保ったマージ済みファイルを作成し、何を残したかを説明します。

主導権はあなたにあります。Diversion アプリでは、結果を確認して **Complete merge** をクリックするまで、何もコミットされません。

> [!NOTE]
>
> AI による競合の解決は、**Professional**、**Studio**、**Enterprise** プランおよびトライアル期間中に利用できます。

## Diversion アプリで競合を解決する

**1. マージを開く**

通常どおりマージを開始します ([並行して作業する](https://docs.diversion.dev/ja/basic/working-in-parallel.md#マージの方法) を参照)。競合がある場合は、競合画面が開きます。

**2. AI に解決を依頼する**

* 1 つのファイルを解決するには、ファイルを選択し、ファイルの上にある **Resolve with AI** をクリックします。
* 多くのファイルを解決するには、ファイル一覧の上にある **Resolve N text files with AI** をクリックします。一部のファイルだけを選ぶには、先にそれらのチェックボックスをオンにします。

関連するファイルは 1 回のリクエストでまとめて解決してください。AI はリクエスト内のすべてのファイルの競合を参照するため、ファイル間で変更の一貫性を保てます。

![Resolve with AI ボタンのある競合画面](https://mintcdn.com/diversion-2/a4POD0Pm5X2fOof-/images/ai-conflict-resolution/before.png?fit=max\&auto=format\&n=a4POD0Pm5X2fOof-\&q=85\&s=4473c2a90dc20fcc5a1b2c7c8d0da8ee)

**3. AI を待つ**

各ファイルには **AI queued** または **AI working** と表示されます。AI が作業している間、そのファイルは読み取り専用です。その間に他のファイルの解決を続けられます。

停止するには、ファイル一覧の上にある **Stop**、またはファイルの上にある **Stop AI and resolve manually** をクリックします。

![競合しているファイルに AI が取り組んでいる様子](https://mintcdn.com/diversion-2/a4POD0Pm5X2fOof-/images/ai-conflict-resolution/working.png?fit=max\&auto=format\&n=a4POD0Pm5X2fOof-\&q=85\&s=525782ad696069ea232b8ec35e13eb05)

**4. 結果を確認する**

解決されたファイルには **Resolved by AI** と、結果の簡単な理由が表示されます。マージ済みファイルを読んでください。

結果に同意しない場合は、**Resolved by AI · Change** を開いてどちらかの側を選ぶか競合に戻るか、ファイルを編集します。

![AI が解決したファイル。マージ結果の上に理由が表示されている](https://mintcdn.com/diversion-2/a4POD0Pm5X2fOof-/images/ai-conflict-resolution/resolved.png?fit=max\&auto=format\&n=a4POD0Pm5X2fOof-\&q=85\&s=f290a95eaa309fc2cb7991bfbbeec38d)

**5. マージを完了する**

残っているファイルを解決し、コミットメッセージを入力して **Complete merge** をクリックします。フッターには、AI が解決したファイルの数が表示されます。

### AI がファイルを解決できない場合

2 つの変更を安全に組み合わせられないことがあります。たとえば、両方のブランチが同じ関数を異なる方法で変更した場合です。その場合、ファイルには **AI couldn't resolve this file** とその理由が表示されます。ファイルは未解決のまま残るため、自分で解決します。

![AI が解決できなかったファイルとその理由](https://mintcdn.com/diversion-2/a4POD0Pm5X2fOof-/images/ai-conflict-resolution/could-not-resolve.png?fit=max\&auto=format\&n=a4POD0Pm5X2fOof-\&q=85\&s=c9680ed228c8aae33e9589e9cf906b76)

すでに変更したファイルについて AI に解決を依頼すると、AI があなたの変更を置き換える前に Diversion が確認します。

## CLI から競合を解決する

`merge`、`update`、または `revert` に `--conflict_resolution ai` を追加します:

```bash theme={null}
dv merge <branch> --conflict_resolution ai
```

1. Diversion はまずサーバー上でマージできるものをマージします。
2. AI がまだ競合のあるテキストファイルを解決し、CLI がその進行状況を表示します。
3. AI がすべての競合を解決した場合、Diversion はマージを完了してコミットを作成します。
4. 競合が残っている場合、マージは開いたままになります。CLI は残った競合を一覧表示し、Diversion アプリでマージを完了するためのリンクを出力します。AI が解決したファイルは解決済みのままです。

> [!WARNING]
>
> CLI からは、AI がすべての競合を解決した場合、確認ステップなしでマージが完了します。各結果を先に確認するには、Diversion アプリを使用するか、作成後のマージコミットを確認してください。

待機をやめるには、`Ctrl+C` を押します。AI はサーバー上で作業を続け、アプリでマージを完了できます。

## プランと制限

* **プラン:** Professional、Studio、Enterprise、およびトライアル期間中。
* **テキストファイルのみ:** AI は、画像、モデル、`.uasset` ファイルなどのバイナリファイルと、シーンやプレハブなどの Unity YAML ファイルをスキップします。これらについては、どちらかの側を選ぶか、[外部マージツール](https://docs.diversion.dev/ja/advanced/external-merge-tools.md) を使用してください。
* **両側にファイルが必要:** 一方の側がファイルを削除した場合や、2 つの異なるファイルが同じパスに移動された場合は、どちらのバージョンを残すかを自分で選びます。
* **ファイルサイズ:** 両側とも 256 KB 以下。それより大きいファイルの場合、AI はファイルが大きすぎることを表示するため、自分で解決します。
* **一度に処理できるファイル数:** 最大 50。それより多くのファイルがあるマージでは、最初のファイルが完了した後にもう一度ボタンをクリックします。CLI はこれを自動的に行います。
* **使用量の上限:** 各組織には AI の使用量の上限があります。組織が上限に達すると、AI は "The AI token budget is used up for now. Try again later." と表示します。上限は数時間後にリセットされます。

## データの扱い

AI は、チームの誰かが競合の解決を依頼したときにのみ実行されます。その際、Diversion は競合しているファイルとそのコミットメッセージを、Diversion を経由して信頼できるサードパーティの AI プロバイダーに送信します。自分の API キーは必要ありません。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.