すべてのページ
このページの内容

Git の変更

Git changes(Git の変更)は、会話の作業フォルダーにある git リポジトリで何が変わっているかを表示します。ブランチ、変更されたすべてのファイル、それぞれの差分です。エージェントにコミットを頼む前に、作業内容を見直すのに使います。これはビューアーです。何かを変更するのは ⬇ Pull(プル)ボタンだけです。

開き方 #

会話の ⋯ メニューを開き、🌿 Git changes を選びます。会話の上にウィンドウが開きます。リレーのホストのフォルダーを読み取るため、どのブラウザーからでも同じ内容が表示されます。

この項目は、開いているすべての会話のメニューにあります。会話が開いていないときと、読み取り専用の共有ビューでは表示されません。

対象のリポジトリ #

ウィンドウは、会話の作業フォルダーで git を実行します。作業フォルダーは、New chat(新しいチャット)ダイアログで選んだもの、または 🗂️ Change CWD(作業フォルダーを変更)で設定したものです。git はターミナルと同じようにそこからリポジトリを見つけます。リポジトリ内のフォルダーでは、そのリポジトリが表示されます。

git がリポジトリを見つけられない場合、ヘッダーには Not a git repository、一覧には The current workspace root is not a git repository. と表示されます。⬇ Pull ボタンは無効になります。複数のリポジトリを並べて置いているだけのフォルダーは、それ自体はリポジトリではないため、このメッセージが表示されます。確認したいリポジトリの中で会話を始めてください。

リポジトリの最上位より下にある作業フォルダー

作業フォルダーがリポジトリのサブフォルダーの場合でも、一覧にはそのサブフォルダーだけでなく、リポジトリ全体の変更が表示されます。そこからファイルを開いても機能せず、どの差分も No textual changes detected for this file. となります。差分を正しく表示するには、リポジトリの最上位のフォルダーで会話を始めてください。

まだコミットがないリポジトリでは、ブランチ名が表示され、ステージ済みのファイルが一覧に載ります。そこでステージ済みのファイルの差分を開くと、git のメッセージ fatal: bad revision 'HEAD' で失敗します。未追跡のファイルの差分は機能します。

ヘッダーには、ブランチと、その横にアップストリームからどれだけ離れているかが表示されます。

ヘッダー 意味
main ブランチ。アップストリームと同じ位置か、アップストリームがありません。
main ↑2 アップストリームより 2 コミット進んでいます。まだプッシュされていません。
main ↓3 アップストリームより 3 コミット遅れています。
main ↑2 ↓3 その両方です。
detached HEAD ブランチではなくコミットがチェックアウトされています。

ブランチの下の 2 行目には、origin/main · 4 changed files(1 つなら 1 changed file)のように、アップストリームと変更されたファイルの数が表示されます。アップストリームのないブランチでは、矢印もアップストリーム名も表示されず、数だけが表示されます。数は git が最後に把握した値です。OAR はフェッチしないため、↓ はフェッチまたはプルの後にしか変わりません。

Pull #

⬇ Pull は、フォルダーでオプションなしの git pull を実行します。ツールチップには「Pull from upstream」と表示されますが、OAR はリモートもブランチも指定しません。マージ、リベース、早送りのみのどれになるかは、git の設定(pull.rebase、pull.ff)次第です。フォルダーがリポジトリであれば、プルするものがないときも常に使えます。ウィンドウの読み込み中とプルの実行中は無効になります(ボタンの表示は Pulling… になります)。プルには最大 120 秒かかることがあります。

終了すると、ヘッダーの下の行に Pull: と git の出力の最後の行(例:Pull: Already up to date.)が表示されます。git が何も出力しなかった場合は Pull complete. と表示されます。git が拒否した場合、その行は赤くなり、Pull failed: の後に git 自身のメッセージが続きます。競合があるとき、プルで上書きされるローカルの変更があるとき、アップストリームのないブランチのときに、この表示になります。OAR は stash、リセット、解決を一切行いません。対処はエージェントに頼んでください。一覧はプルのたびに再読み込みされます。

一覧 #

変更されたファイルは 1 つにつき 1 行です。ステージ済み、未ステージ、未追跡のファイルがまとめて、パス順に並びます。各行には次のものが表示されます。

  • 状態を示す文字のバッジと、ファイル名(その下にフォルダー)
  • 名前を変更したファイルでは、← の後に古いパス
  • 削除したファイルは、名前に取り消し線

git がまだ追跡していない新しいフォルダーは、中のファイルごとではなく、フォルダー全体で 1 行になります。名前は空で、その下にフォルダーのパスが表示されます。開くと No textual changes detected for this file. と表示されます。

バッジ 意味
M 変更
A 追加
D 削除
R 名前の変更
C コピー
T 種類の変更
U 未追跡:git がまだ追跡していない新しいファイル

ステージした後に編集したファイルは、作業コピーの状態で 1 回だけ表示されます。一覧では、ステージ済みの変更と未ステージの変更は区別されません。行にポインターを合わせると、状態の説明とフルパスが表示されます。

競合しているファイル

マージで競合したファイルには、専用のバッジがありません。両方の側で変更されたファイル(git の UU)は、追跡されているにもかかわらず U と Untracked(未追跡)という語で表示されます。両方の側で追加されたファイルは A、両方の側で削除されたファイルは D、片方の側で削除されたファイルは、どちらの側かによって D(取り消し線付き)または U で表示されます。その差分は開くことができ、最後のコミットと比較されます。競合を確認するには、ターミナルで git status を使うか、エージェントに頼んでください。

表示するものがないリポジトリでは、Working tree clean — no changes. と表示されます。

再読み込み #

一覧はリアルタイムには更新されません。読み込まれるのは、ウィンドウを開いたとき、↻(再読み込み)を押したとき、プルの後です。エージェントの作業中は、↻ を押すと最新の編集が表示されます。ウィンドウを閉じて開き直しても同じです。

差分ビューアー #

行をクリックすると、そのファイルの差分が一覧の上の 2 つ目のウィンドウで開きます。差分はファイルを最後のコミットと比較するため、ステージ済みの編集と未ステージの編集が一緒に表示されます。タイトルはファイルのパスで、その下に状態と数が表示されます(例:Modified · +12 −3)。

ボタン 表示
Changes(変更) 追加・削除された行と、その前後の変更のない 3 行です。それより長く変更のない部分は ⋯ 40 unchanged lines に折りたたまれます。これが既定です。
Full file(ファイル全体) ファイルのすべての行で、変更箇所に印が付きます。

どちらの表示も 1 つの差分から作られるため、切り替えはすぐです。選んだ表示は、ページを再読み込みするまで、次に開くファイルにも引き継がれます。各行には新旧の行番号が付き、追加された行は緑、削除された行は赤で表示されます。

ファイル 表示される内容
新規(未追跡) すべての行が追加として表示されます。
削除 すべての行が削除として表示されます。
名前の変更 新しいパスを最後のコミットと比較します。内容が変わっていなくても、すべての行が追加として表示されます。
バイナリ Binary file — no text diff available. と表示され、状態だけで数はありません。
テキストの変更なし(モードの変更など) No textual changes detected for this file.
非常に大きい 同じ差分が全体で表示されます。OAR はサイズの上限を設けていませんが、差分の読み取りには 15 秒と 32 MB の出力上限があります。これを超えるファイルでは、差分の代わりにエラーメッセージが表示されます。

長い行は折り返されません。横にスクロールして読んでください。

git が状態や差分を読み取れない場合、そのメッセージが一覧の上、または差分の代わりに赤で表示されます。

差分は ×、Esc、または外側のクリックで閉じます。その後ろには一覧が開いたままです。続けて ×、Esc、または外側のクリックで一覧も閉じます。

できないこと #

ここでは、ステージ、コミット、変更の破棄、プッシュはできず、ファイルを編集する方法もありません。コミット、変更の取り消し、プッシュは、会話の中でエージェントに頼んでください。Claude でエージェントが行うコミットには、選んだ帰属表示の行が付きます。コミットの帰属表示を参照してください。0.9.17 で追加 DeepSeek では、DeepSeek タブの Commit attribution(コミットの帰属表示)で選んだ行、またはフォルダー独自の設定の行が付きます。

プロバイダー別 #

ウィンドウは、リレーのホストで動作するすべてのプロバイダー(GitHub Copilot、OpenAI、Claude、Cursor、Grok、DeepSeek)で同じです。読み取るのはフォルダーと git で、エージェントではありません。

プロバイダー Git の変更
Claude Cloud チャットは Anthropic 側のクローンで作業し、このウィンドウからは見えません。メニューに項目はあり、リレーのホストで New Chat で選んだ作業フォルダー(リポジトリとブランチを埋めたもの)を読み取ります。サンドボックスでの変更ではありません。エージェントの結果は、エージェントがプッシュしたブランチとして戻ってきます。入力欄の上のクラウドの行に、プッシュされたブランチごとに 1 つの ⇡ branch(⇡ ブランチ)リンクがあります。Claude Cloud を参照してください。