チェックポイントと編集リクエストによる変更の取り消し
Visual Studio Codeでのチャットセッションでは、ワークスペース内の1つ以上のファイルに変更が加えられることがあります。VS Codeでは、これらの変更を取り消したり修正したりするために2つの方法が提供されています。
- 以前のリクエストを編集する:既に送信したプロンプトを修正します。VS Codeはそのリクエストおよびそれ以降のすべてのリクエストによって行われた変更を元に戻し、編集されたプロンプトを再送信します。リクエストの言い回しを変えて異なる結果を得たい場合に使用してください。
- チェックポイントを復元する:会話内の特定の時点まで、すべてのファイル変更をロールバックします。プロンプトを修正せずに、既知の正常な状態に戻したい場合に使用してください。
どちらの機能も、個々の編集内容を承諾または拒否するレビューワークフローを補完するものです。一連の変更を一度にまとめて取り消したい場合に、チェックポイントと編集機能を使用してください。
以前のチャットリクエストを編集する
会話履歴内の各チャットリクエストは編集可能です。以前のチャットリクエストを編集すると、編集後のリクエストが新しいリクエストとして言語モデルに送信され、元のリクエストおよびそれ以降のリクエストによって行われたファイル変更は元に戻されます。
以前のチャットリクエストを編集するには、チャットビューで変更したいリクエストを選択し、再送信します。 chat.editRequests 設定で、編集エクスペリエンスの設定や無効化が可能です。
チェックポイントを使用してファイル変更を元に戻す
チャットのチェックポイントは、ワークスペースの状態を過去の時点に復元する方法を提供するもので、チャットの対話が複数のファイルにまたがる変更をもたらした場合に便利です。
チェックポイントが有効な場合、VS Codeは各チャットリクエストが処理される前に、影響を受けるファイルのスナップショットを自動的に作成します。つまり、会話内の各チャットリクエストには、復元可能な対応するチェックポイントが存在します。
チェックポイントを有効にするには、 chat.checkpoints.enabled 設定を構成してください。
チェックポイントを復元する
チェックポイントを復元すると、VS Codeはワークスペースをそのチェックポイント時点の状態に戻します。つまり、そのチェックポイント以降に行われたすべてのファイル変更が元に戻されます。
ワークスペースを以前のチェックポイントに復元する方法:
-
チャットビューで、チャットセッション内の以前のチャットリクエストに移動します。
-
チャットリクエストにカーソルを合わせ、チェックポイントを復元を選択します。

-
チェックポイントを復元し、その時点以降に行われたファイル変更を取り消すことを確認します。
そのチャットリクエストが会話履歴から削除され、ワークスペースのファイルがチェックポイント時点の状態に復元されることに注意してください。
復元後のやり直し
以前のチェックポイントに復元した後、取り消された変更をやり直す(Redo)ことができます。これは、誤ってチェックポイントに復元してしまった場合に役立ちます。
チェックポイント復元後の変更をやり直すには、チャットビューでやり直し (Redo)を選択します。

チェックポイント内のファイル変更を表示する
各チャットリクエストの影響を理解し、どのチェックポイントを復元すべきか判断しやすくするために、 chat.checkpoints.showFileChanges 設定を有効にしてください。これにより、各チャットリクエストの最後に変更されたファイルのリストと、各ファイルで追加・削除された行数が表示されます。

チェックポイントからフォークする
チェックポイントから会話をフォークして、その時点までの会話を含む新しい独立したセッションを作成できます。これは、元の会話を維持したまま、別の手法を試すために分岐させたい場合に便利です。
チェックポイントからフォークするには、チャットリクエストにカーソルを合わせ、会話のフォークボタンを選択します。チャットセッションのフォークについての詳細をご覧ください。
よくある質問
チェックポイントはGitバージョン管理の代わりになりますか?
いいえ。チェックポイントはチャットセッション内での素早い反復作業用に設計された一時的なものです。Gitを補完するものであり、置き換えるものではありません。永続的なバージョン管理やコラボレーションにはGitを使用してください。チェックポイントは、アクティブなチャットセッション中に試行錯誤する際に最適です。