コンテンツにスキップ

バックアップとログ

保存先

バックアップと記録は、プロジェクト直下(Assets/ の外)に作られます。

<プロジェクトフォルダ>/AssetSanshounaosuNator_Backup/<日時>/

Assets/ の外にあるのは、Unity にインポートさせないためです。バックアップした .prefab がプロジェクト内に増えると、それ自体が新しい参照の混乱を生みます。

バージョン管理から外れている場合があります

Assets/ の外なので、プロジェクトの .gitignore の書き方によっては Git に含まれません。大事な修復の前後では、この中身を自分でどこかへ退避しておくと確実です。

何が入っているか

実行の種類ごとに、日時のフォルダが 1 つ作られます。

ファイル いつできるか 中身
inspection.md 検査したとき 検査対象と、検出した問題の一覧
batch-inspection.md まとめて検査したとき 全体の件数と、Prefab ごとの問題一覧
repair.md 修復したとき どのファイルの何行目を、どの GUID からどの GUID へ変えたか
recovery.md ごみ箱から復元したとき コピー元・コピー先と結果
*.prefab 修復したとき 書き換える前の Prefab そのもの

修復のときは、書き換え前の .prefab が同じフォルダにコピーされています。 これが元に戻すための本体です。

検査しただけでもフォルダは増えます

検査は非破壊ですが、記録は残します。フォルダが増えすぎたら、修復を含まないもの(inspection.md だけのもの)から削除して構いません。

元に戻す

修復の結果に納得できない場合、バックアップされた .prefab で上書きすれば元の状態に戻せます。

  1. Unity を開いたまま、対象の Prefab を Prefab Mode で開いていないことを確認します。
  2. AssetSanshounaosuNator_Backup/<日時>/ の中から、目的の .prefab を探します。日時とフォルダ内の repair.md で、どの修復のものかを確認してください。
  3. その .prefab を、元の場所のファイルに上書きコピーします。
  4. Unity に戻ると再インポートが走ります。走らない場合は、Project ウィンドウで対象を右クリックして Reimport します。

上書きする前に、行き先が合っているか確認してください

バックアップのファイル名は元のファイル名と同じですが、フォルダ構造は保持していません。 同名の Prefab が複数ある場合、repair.md に書かれているパスで行き先を確認してください。

戻したあと、もう一度「参照を検査」すると、修復前の状態に戻っていることを確認できます。

元に戻せないもの

次の操作は、この方法では戻せません

操作 なぜ
Force Text への変換 プロジェクト全体の設定変更です。Unity の設定から戻せますが、再度の再シリアライズが走ります
ごみ箱からの復元 ファイルを追加する操作です。戻したいなら、追加されたファイルを自分で削除してください(ごみ箱の原本は残っています)
.unitypackage のインポート ツールは実行しません。あなたが自分で行った操作なので、影響範囲もあなたの側にあります

ログの読み方

repair.md には、実行ごとに次が追記されます。

## repair
timestamp: …
success: true
method: …
file: Assets/Avatar/Hoodie.prefab
line: 2481
oldGuid: 3f2b…
newGuid: 8ac1…

まとめて修復した場合は、変更した全行の Diff が続けて記録されます。画面のプレビューには先頭数行しか出ないので、全部を確認したいときはこのファイルを見てください。