バージョン履歴

バージョン管理が有効なモデルでは、保存のたびに番号付きの新しいバージョンが書き込まれ、その後は変更されません。レコードのバージョンを一覧し、1つを直前のものと比較し、以前のものを復元できます。

履歴を保持するモデル

モデルは、バージョン管理、公開、バリアントのいずれかを有効にすると履歴を保持します。3つとも既定ではオフで、モデルごとに設定します。どれも有効でないモデルでは、更新はデータをその場で置き換えます。

コンソールに表示されるもの

レコードの履歴タブには、そのバージョンが作成者名と変更内容の説明とともに一覧されます。そこから、バージョンを直前のものと比較したり、復元したりできます。説明はAPIとCLIでは任意で、編集者が空欄にすると、コンソールが「Content saved」と入力します。

復元するとバージョンが増える

復元は、古いバージョンの内容を新しいバージョンとして戻し、他の保存と同様に検証されます。履歴は前にしか進まず、復元元のバージョンは変更されません。そのバージョンが書かれてからモデルが変わっている場合、復元では、モデルがもう宣言していないフィールドは削除され、もう受け付けない形式の値は拒否されます。

復元を事前に確認する

foir records revertには--dry-runフラグがあります。変換される内容、削除される内容、拒否される内容を報告し、何も書き込まず、リバートが拒否される場合はゼロ以外の終了コードで終了します。GraphQLのリバートミューテーションにも、対応するdryRun引数があります。

履歴の保持期間

履歴を保持する期間はプランによって異なり、毎日の処理でそれより古いバージョンは回収されます。古さにかかわらず保持されるバージョンがあります。編集中のバージョン、公開中のバージョン、予約公開待ちのバージョン、ロールアウトのロールバックで復元されるバージョン、そして各レコードの最新バージョンです。

詳細を読む

レコードガイドでは、バージョンの書き込み方法、保持期間、モデルが変わった場合の復元の動作を説明しています。