VS Codeでファイルが消えた話|ローカル履歴機能に救われました
こんにちは。いっきー(@ikirin_web)です。
コーディング中に突然ファイルが消えて、焦った話をします。
結論から言うと、VS Codeのローカル履歴機能で復旧できました。同じような状況になった方の参考になれば幸いです。
VS Codeのフォルダの中身が消えた
作業中にMacの容量がパンクして、VS Codeが強制終了しました。
再起動してVS Codeを開いたら、SCSSのフォルダ(foundation・global・layout)の中身が全部消えていました。
え?うそでしょ??コーディングしているのにまた最初から変数を設定しないといけないの??
と内心焦りまくりました。しかも、Gitも入れていなかったので、バックアップもなしでした。
ローカル履歴で復旧する手順
VS Codeにはローカル履歴(Local History)という機能があります。ファイルを保存するたびに、自動で履歴を残してくれる機能です。Gitを使っていなくても有効です。
手順はこうです。
① 対象フォルダを選択する
サイドバーのエクスプローラーで、消えたファイルがあったフォルダを選択します。
② コマンドパレットを開く
Cmd + Shift + Pでコマンドパレットを開きます。
③ Local Historyで検索する
Local History: Find Entry to Restoreと入力します。
④ ファイル名で検索して中身を確認する
消えたファイル名(例:_base.scss、_reset.scssなど)を入力して検索します。ヒットしたら、一番直近の履歴を選択すると中身が表示されます。
内容が残っていることを確認したら、その中身をコピーします。
⑤ 新規ファイルを作成して貼り付ける
フォルダ内に同じファイル名(例:_base.scss)で新規ファイルを作成し、コピーした内容を貼り付けます。
ここまでの手順で、ローカル履歴から内容を復旧できます。
改めて振り返っても、めちゃくちゃ焦りました〜
「消えた」と思ったらまずローカル履歴を試す。
これを肝に銘じておこうと思います!
この件で学んだこと
今回の一連の事故で、改めて感じたことが2つあります。
ひとつ目は、VS Codeのローカル履歴は意外と頼りになるということ。 Gitを入れていない状態でも、ファイル単位で過去の状態に戻せます。知っているかどうかで、焦り方がまったく違います。
ふたつ目は、それでもGitには勝てないということ。 ローカル履歴はあくまでVS Code内の機能なので、アプリが壊れたり、Mac自体が死んだりしたら終わりです。今回は結果的にファイルが残っていたからよかったものの、もし本当に消えていたら復旧できなかったかもしれません。
この事故をきっかけに、その日のうちにGitを導入しました。導入の流れは別の記事にまとめています。
→ GitとGitHubの連携とpushまでの手順・運用フローのメモ
最後まで読んでいただきありがとうございます。