Unityで作ったゲームのデータをGitに記録するべく、Sourcetreeで初コミットを試みました。しかし慣れもあり手順が杜撰で、インデックス追加ファイルが膨大(全追加)になってしまいました。
作業を停止させるつもりで、「破棄」ボタンを押したらデータが消えてしまいました。悲しみ。

プロジェクトのフォルダを見たら、フォルダは残っているのに中身のファイルが全部なくなっている状態でした。初コミット前でバックアップはしていません。ごみ箱にもないです。
なお消えてしまったのは先月作ったミニゲーム『長靴海域』です。イベントで1日で作ったゲームとはいえなんとか取り戻したい……。ゲーム自体はItch.ioで公開済みだし、イベントが終わってもう1ヶ月になるしでそこまで困るということはないのですが……。
以下は復元できないか足掻いた記録です。
復元?
複数のLLMに聞いたところ、復旧は絶望的とのこと。そんな……初コミット前に破棄ボタンを押しちゃっただけなのに……。
なおプロジェクトは外付けSSDに置いてありました。
ファイル履歴

1ヶ月前のプロジェクトだからファイル履歴が何かしら残っているかもと思ったもののダメでした。そもそもバックアップ範囲に含まれていませんでした。
ターミナル
見様見真似でターミナルを開いて色々打ち込んだもののダメでした。
救いを求めてCtrl+Zを連打してもダメでした。
Unity Cloud
今まで存在を忘れていましたが、もしかしたらUnity Cloudにデータが残っているかも……。
と思ったものの、接続しているだけではデータは同期されていませんでした。それはそう。Version ControlもGitがあるから大丈夫だと思ってあまり関心がありませんでした。大丈夫じゃなかった。
復元ソフトRecuva
Windows向けのファイル復元ソフトRecuvaを試してみました。基本的な機能は無料で使えるようです。
ダウンロードページにCCleanerのロゴが見えてちょっと懐かしい気分でした。

使ってみたらファイル一覧が出てきました。すごい! ……と思ったのも束の間、赤◯はファイルが破損している表示とのこと。大多数が破損していたので、この時点で諦めがついてきました。
SSDではなくHDDだったらもっと希望があったのかも。変わらなかったかも。
必要なフォルダ(Assets,Project Settings, Packages)のファイルを復元してみたものの、やはり大体のファイルは壊れて開けませんでした。
Unityで開く
残骸だけでもと思い、復元できたデータをAssetsフォルダに詰めてUnityで開いてみました。UnityはAssetsフォルダだけでも開けるって前にUnityのチャンネルで見たので!

うーん今回はダメでしたね……。
Assetsフォルダで最低限の起動はできるものの、メタファイル(.meta)が破損していると正しく認識されないそうです。メタファイルどころか元のファイルも壊れているので……。
今回のゲームは素材のほとんどがアセットストアのもので、それらを組み立てた作業部分さえあればなんとか立て直せると思っていました。しかしどれが必要なファイルだったかすら判別できませんでした。
バックアップさえしていれば……と思うものの、そのバックアップをしようとした結果がこれです。
プロジェクトを偲んで
プロジェクトの差分ではなく本体がなくなってしまうのはなかなかにショックでした。
消えてしまったことは悲しいですが、1日規模のプロジェクトでこの失敗を学べてよかったと思います。不幸中の幸い。

LLMは「初心者あるある」「通過儀礼」と言っているし、おそらくもっと大切なデータを無に帰してしまった先人も数多くいることでしょう。そんな悲しみに思いを馳せるなどしました。
おわりに
破棄ボタンは危険。Gitは強力で、使用には細心の注意が必要だと学びました。
そろそろ初心者を脱却できていると思っていましたが慢心でした。失敗前の人はどうか同じ轍を踏まないでください。
完成したゲーム自体は引き続き遊べるのでよろしくです。



















