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

# チェックポイントとロールバック

> チェックポイントが作業を自動保存する仕組みと、ロールバックで変更を元に戻す方法について説明します。

Replitでは、作業内容を失う心配はありません。

Replitのチェックポイントとロールバックシステムは、開発環境全体に対して包括的なバージョン管理と状態管理を提供します。

Replit Agentを使用すると、チェックポイントがプロジェクトの完全な状態を自動的にキャプチャします。これにはコードの変更だけでなく、プロジェクトファイル、AIの会話コンテキスト、接続されたデータベースも含まれます。

## チェックポイントとは？

**チェックポイント**は、開発の重要なマイルストーンでAgentが自動的に作成する、Replit Appの状態の完全なスナップショットです。コードの変更のみを追跡する従来のバージョン管理とは異なり、Replitのチェックポイントは開発コンテキスト全体をキャプチャします。

チェックポイントはビデオゲームのセーブポイントのようなものです。常にアプリの動作している状態に戻ることができます。

<Frame>
  <img src="https://mintcdn.com/replit/AZ1L8RlIroSxuJDa/images/replitai/agent-checkpoint.png?fit=max&auto=format&n=AZ1L8RlIroSxuJDa&q=85&s=326ff336a67eeadb4cc05543d39603ac" alt="ロールバックオプションが表示されているAgentチェックポイントのインターフェース" width="1554" height="876" data-path="images/replitai/agent-checkpoint.png" />
</Frame>

### 完全な状態のキャプチャ

各チェックポイントには以下が保存されます：

* **プロジェクトファイル**：すべてのファイル、ディレクトリ、インストール済みパッケージ、プロジェクト設定
* **AIの会話コンテキスト**：現在の状態に至るまでの完全な会話履歴とコンテキスト
* **環境設定**：ランタイム設定と発行設定
* **Agentのメモリ**：プロジェクトのアーキテクチャ、好み、パターンに関するAIの理解
* **データベースの内容**：チェックポイント作成時点のデータベースのデータとスキーマ

この包括的なアプローチにより、コードだけでなく開発コンテキスト全体を復元できることがわかっているため、安心して変更を試せます。

## ロールバックの仕組み

**ロールバック**機能により、ワンクリックでReplit Appを任意の以前のチェックポイント状態に復元できます。これは従来のGitのrevert操作よりもはるかに強力です。

<Frame>
  <img src="https://mintcdn.com/replit/0UCOQvZyQpUEM03B/images/replitai/checkpoint-rollback.png?fit=max&auto=format&n=0UCOQvZyQpUEM03B&q=85&s=f9594eb28458309b2759e8698b8535ce" alt="ロールバックオプションが表示されているチェックポイントロールバックのインターフェース" width="3154" height="2366" data-path="images/replitai/checkpoint-rollback.png" />
</Frame>

ロールバックは安全で予測可能になるよう設計されています：

* **非破壊的なプレビュー**：一部のインターフェースでは、実際にロールバックする前にチェックポイントの状態をプレビューできます
* **明確な境界**：各チェックポイントは論理的な開発マイルストーンを表します
* **会話の継続性**：AIコンテキストが保持されるため、復元後の状態から構築を続けられます
* **即時反映**：ロールバックは開発環境全体に即座に適用されます

### ロールバックの実行

以前のチェックポイントにロールバックすると、プロジェクトはその以前の状態に戻ります。以下が含まれます：

1. **完全なプロジェクト状態**：すべてのプロジェクトファイルが選択したチェックポイント時点の正確な状態に戻ります
2. **AIの会話コンテキスト**：Agentの会話がチェックポイント時点に復元され、コンテキストの継続性が保たれます
3. **プロジェクト設定**：依存関係、パッケージ、ランタイム設定
4. **開発環境**：ツール設定とプロジェクトエディターの設定
5. **データベースの内容（オプション）**：選択した場合、データベースはチェックポイント時点の状態に復元されます

<Info>
  デフォルトでは、ロールバックはデータベースを変更しません。開発用データベースをロールバックに含めるには、「Additional rollback options」で「Database」を選択してください。

  \*\*[本番データベース](/references/data-and-storage/production-databases)\*\*の復元は、このロールバック機能では自動的に行われません。
  本番データベースを以前の時点に復元する方法については、[ポイントインタイムリストアの実行方法に関するドキュメント](/references/data-and-storage/production-databases/#point-in-time-restore)を参照してください。
</Info>

<Warning>
  ロールバック機能を使用すると、Replit Appが以前の状態に復元されます。これにより、コードの編集を含む、それ以降に行われたすべての変更が削除されます。データベースの復元を選択した場合、データベースの変更も元に戻されます。
</Warning>

### ロールフォワード

Replitのチェックポイントは双方向に機能します。プロジェクトの履歴を前後どちらの方向にも移動できます。
これにより、作業を失う心配なく、開発のタイムラインを自由に行き来できます。

ロールバックしすぎた場合や、より後のチェックポイントの変更を取り戻したい場合は、**ロールフォワード**でチェックポイント履歴を先に進めることができます。これにより、作業を失うことなくプロジェクトのタイムラインを自由に移動できます。

ロールフォワードするには、Agentタブの履歴アイコン<img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/history.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=d2f027e7ef50dca743e80ed026c3f0ca" alt="履歴アイコン" width="24" height="24" data-path="images/icons/history.svg" />をクリックして履歴ビューにアクセスし、現在位置より後のチェックポイントを選択します。

<Info>
  ロールフォワードは、タイムライン上の現在位置より先にチェックポイントがある場合にのみ可能です。ロールバック後に新しい変更を加えると、それ以降のチェックポイントは別の履歴ブランチの一部となります。
</Info>

この双方向ナビゲーションにより、プロジェクトのタイムラインを完全にコントロールでき、作業が常に復元可能であることが保証されます。

## チェックポイントの作成

チェックポイントは、開発中の戦略的なタイミングでReplitのAIツールによって自動的に作成されます。

### Agentチェックポイント

[Replit Agent](/references/agent/overview)は以下のタイミングでチェックポイントを作成します：

* **機能の完了**：リクエストされた機能や機能性の実装に成功した後
* **主要なマイルストーン**：複雑なタスクで大きな進捗があったとき
* **安定した状態**：実装された変更のテストと検証後
* **エラー回復**：重大な問題の修正を試みる前

### チェックポイントの特徴

すべてのチェックポイントには以下が含まれます：

* **AIが生成した説明**：達成された内容の明確でわかりやすいサマリー
* **タイムスタンプ情報**：容易に識別できる正確な作成時刻
* **変更の範囲**：変更されたファイル、機能、システムの表示
* **課金情報**：Agentの場合、チェックポイントごとの透明なコスト追跡

## チェックポイントとロールバックの使い方

### チェックポイントの確認

チェックポイントはプロジェクトエディター内の複数の場所に表示されます：

**Agentタブ**：すべてのAgentが作成したチェックポイントを、説明とロールバックオプションとともに表示
**Gitペイン**：Gitコミットとしてチェックポイントを表示し、完全なバージョン管理と統合
**履歴ビュー**：Agentチャットで履歴アイコン<img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/history.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=d2f027e7ef50dca743e80ed026c3f0ca" alt="履歴アイコン" width="24" height="24" data-path="images/icons/history.svg" />をクリックして、すべてのチェックポイントと進行の完全なタイムラインにアクセス

### ロールバックの実行

ロールバックのプロセスは、開始場所によって若干異なります：

#### Agentタブから

<Steps>
  <Step title="Agentに移動">
    プロジェクトエディターの**Agent**タブを開いて、Agentが作成したすべてのチェックポイントを表示します。
  </Step>

  <Step title="チェックポイントを選択">
    復元したいチェックポイントを見つけて、**Rollback to here**を選択します。
  </Step>

  <Step title="ロールバックを確認">
    ロールバックの警告を確認し、選択した状態にアプリを復元することを承認します。
  </Step>

  <Step title="復元を確認">
    プロジェクトファイル、データベース、AIコンテキストが復元されたチェックポイント状態と一致していることを確認します。
  </Step>
</Steps>

### ベストプラクティス

**チェックポイントを戦略的に活用する**：

* 安定性を確保するため、主要なチェックポイントの後にアプリをテストする
* 自動チェックポイントと並行して、長期的なバージョン追跡のために手動のGitコミットを作成する
* チェックポイントの説明を確認して何が変更されたかを把握する

**ロールバックの注意点**：

* ロールバックする前に変更の範囲を必ず確認する
* データベースや外部インテグレーションへの影響を考慮する
* チームの認識を維持するためにコラボレーターにロールバックを伝える

**反復的な開発**：

* 頻繁なチェックポイントを活用できるよう、段階的に構築する
* ロールバックを使って異なる実装アプローチを安全に試す
* ロールバック後も会話を続けられるよう、AIコンテキスト保持を活用する

## バージョン管理との統合

チェックポイントはReplitの広範なバージョン管理エコシステムとシームレスに連携します：

### Git統合

* **Gitコミットの生成**：各チェックポイントが対応するGitコミットを作成
* **ブランチの互換性**：チェックポイントはブランチ構造とマージワークフローを尊重
* **リモート同期**：GitHubとの統合でチェックポイントの同期を維持
* **コマンドラインアクセス**：チェックポイントと並行して完全なGit機能が利用可能

### コラボレーション機能

* **チームの可視性**：チェックポイントはすべてのプロジェクトコラボレーターに表示される
* **マージコンフリクトの防止**：チェックポイントのタイミングにより競合の可能性が低下
* **共有コンテキスト**：AIの会話コンテキストがチームメンバーの変更理解を助ける
* **リアルタイム更新**：コラボレーターはチェックポイントの作成をリアルタイムで確認できる

## 高度な機能

### チェックポイントのプレビュー

一部のインターフェースではチェックポイントのプレビュー機能をサポートしています：

* **ビジュアル比較**：異なるチェックポイント状態でのアプリの外観を確認
* **非破壊的な探索**：実際にロールバックせずにプレビュー
* **進捗の追跡**：アプリがどのように進化したかを理解
* **反復の比較**：異なる実装アプローチを比較

### セッションをまたいだロールバック

上級ビルダーやチーム管理者向け：

* **拡張された履歴**：複数の開発セッションにわたるチェックポイントにアクセス
* **管理者コントロール**：チームの管理者がユーザーセッション全体でロールバックを実行可能
* **監査証跡**：チェックポイント作成とロールバック操作の完全な履歴

## ユースケース

### 実験的な開発

チェックポイントにより、大胆な実験が可能になります：

* 簡単に元に戻せることがわかった上で新機能を試す
* 異なるアーキテクチャアプローチをテストする
* 代替UIデザインやユーザーフローを探索する
* 安全策を持った複雑なインテグレーションを実装する

### デバッグと回復

問題が発生したとき、チェックポイントは信頼性の高い回復手段を提供します：

* バグが発生したとき動作している状態にロールバックする
* チェックポイントの状態を比較して問題を特定する
* データ破損後にデータベースの整合性を復元する
* 誤った削除や変更から回復する

### 学習と反復

チェックポイントは教育的な開発をサポートします：

* 異なる実装戦略を比較する
* チェックポイントの進行を通じてAIの意思決定プロセスから学ぶ
* 機能がどのように進化したかを探索して理解を深める
* ロールバックの安全策を持って新しいテクニックを練習する

## 次のステップ

Replitの関連機能についてさらに学ぶには：

* [Replit Agent](/references/agent/overview)：AIを活用したアプリ開発とチェックポイント作成について学ぶ
* [Agentモード](/references/agent/agent-modes)：ターゲットを絞った構築や大規模な構築のためのLite、Economy、Power、Turboを探索する
* [バージョン管理](/learn/projects-and-artifacts/version-control)：Git統合と広範なバージョン管理オプションを理解する
* [ファイル履歴](/references/version-control/file-history)：ファイルレベルの詳細な変更追跡を探索する
* [効果的なプロンプト](/learn/effective-prompting)：チェックポイント駆動の開発テクニックをマスターする
