VSCode(Visual Studio Code)を使っていると、「削除したファイルはどこに行くのか」「VSCodeのゴミ箱はどこにあるのか」と疑問に思うことがあります。
結論からいうと、VSCodeには、Windowsの「ごみ箱」やmacOSの「ゴミ箱」のような、削除済みファイルを一覧で保管する専用画面はありません。
VSCodeのエクスプローラーから通常の方法でファイルを削除した場合、OS側のごみ箱機能を利用できる環境では、Windowsの「ごみ箱」やmacOSの「ゴミ箱」へ移動します。
ただし、削除方法や使用している環境、ファイルシステムなどによっては、ごみ箱を経由せず削除される場合もあります。
そのため、「VSCodeのゴミ箱を開きたい」という場合は、何をしたいのかによって確認する場所が異なります。
VSCodeには削除済みファイル専用のゴミ箱はない
VSCodeの左側にあるエクスプローラーは、開いているフォルダやワークスペース内のファイルを管理するための機能です。
Windowsのごみ箱のように、削除されたファイルをまとめて保管する場所ではありません。
たとえば、VSCodeで次のようなプロジェクトを開いていたとします。
MY-PROJECT
├─ index.html
├─ style.css
└─ script.js
ここからindex.htmlを削除したとしても、VSCode内に次のような「Trash」フォルダが作られるわけではありません。
Trash
└─ index.html
VSCodeのExplorerから通常の削除を行い、OSのごみ箱機能を使用できる場合は、OS側のごみ箱へ移動します。
VSCodeでファイルを削除する方法
エクスプローラーを開く
VSCodeでファイルを削除する場合は、まず左側の「エクスプローラー」を開きます。
WindowsやLinuxでは、次のショートカットを利用できます。
Ctrl + Shift + E
macOSでは、次のショートカットです。
Shift + Command + E
エクスプローラーを開くと、現在のプロジェクト内にあるファイルやフォルダが表示されます。
ファイルを右クリックして削除する
削除したいファイルを右クリックし、「削除」または「Delete」を選択します。
表示言語によって名称は異なりますが、基本的な操作は同じです。
削除したいファイルを右クリック
↓
削除(Delete)
環境によっては削除確認のダイアログが表示されます。
VSCodeにはexplorer.confirmDeleteという設定もあり、ファイル削除時の確認動作に関係しています。
ただし、ごみ箱を経由できない削除など、データを完全に失う可能性がある操作では、VSCode側で確認が表示される場合があります。
VSCodeで削除したファイルはどこに行く?
Windowsの場合
WindowsでVSCodeのエクスプローラーから通常の方法でファイルを削除した場合、OSのごみ箱機能が利用できる環境では、Windowsの「ごみ箱」へ移動します。
そのため、誤って削除してしまった場合は、まずデスクトップなどにある「ごみ箱」を確認しましょう。
削除したファイルが残っていれば、ファイルを右クリックして「元に戻す」を選択することで、元の場所へ復元できます。
macOSの場合
macOSの場合は、Dockなどにある「ゴミ箱」を確認します。
VSCodeから通常の方法で削除したファイルが残っていれば、「戻す」などの操作で元の場所へ復元できます。
Linuxの場合
Linuxでは、使用しているディストリビューションやデスクトップ環境によって動作が異なります。
GNOMEやKDEなど、ごみ箱機能を提供しているデスクトップ環境では、「Trash」などへ移動する場合があります。
一方、ごみ箱機能を利用できない環境では、削除方法によっては完全削除になることもあります。
ターミナルにあるゴミ箱アイコンは何?
VSCodeを使用していると、画面下部のターミナル右上付近にゴミ箱の形をしたアイコンが表示されることがあります。
このゴミ箱アイコンは、ファイルを削除するためのボタンではありません。
ターミナルのゴミ箱はターミナルセッションを終了するボタン
ターミナルに表示されるゴミ箱アイコンは、現在開いているターミナルインスタンスを終了するために使われます。
イメージとしては、次のようになります。
TERMINAL
PS C:\Users\username\project>
🗑
このアイコンを押したからといって、プロジェクト内のファイルが削除されるわけではありません。
つまり、
ターミナルのゴミ箱
=ファイルを削除する
ではなく、
ターミナルのゴミ箱
=ターミナルセッションを終了する
という意味です。
VSCodeで「ゴミ箱アイコンがある」と聞いた場合、このターミナルのアイコンを指しているケースもあるため、混同しないようにしましょう。
VSCodeで削除したファイルを復元する方法
誤ってファイルを削除してしまった場合でも、状況によっては復元できます。
確認する順番を覚えておくと便利です。
まずOSのごみ箱を確認する
最初に確認したいのが、WindowsやmacOSなどのOS側のごみ箱です。
VSCodeのExplorerから通常の方法で削除した場合、ごみ箱機能が利用できる環境では、削除したファイルが残っている可能性があります。
Windowsの場合は、
ごみ箱
↓
削除したファイルを探す
↓
右クリック
↓
元に戻す
という手順で復元できます。
Git管理している場合はSource Controlを確認する
プロジェクトをGitで管理している場合、削除したファイルをGitから復元できることがあります。
VSCodeのSource Controlでは、ファイルの状態が文字で表示されます。
代表的なものは次のとおりです。
U = Untracked
M = Modified
D = Deleted
Gitで追跡されていたファイルを削除すると、Source Control上で「D」と表示されることがあります。
たとえば次のような状態です。
Changes
D index.html
M style.css
この場合、削除したindex.htmlがGitに記録されていれば復元できる可能性があります。
git restoreで復元できる場合もある
Git管理されているファイルであれば、ターミナルから次のようなコマンドを使って復元できる場合があります。
git restore index.html
ただし、すべての削除ファイルを復元できるわけではありません。
たとえば、新しく作成したファイルを一度もGitで追跡・コミットしていない状態で削除した場合、そのファイルの内容はGitの履歴には残っていません。
そのため、
Gitを使っている
=すべての削除ファイルを復元できる
というわけではありません。
正確には、「Gitに記録されていたファイルであれば復元できる可能性が高い」と考えるとよいでしょう。
参考サイト
間違って削除してしまった開発中のファイルを復活させる(かもしれない)3つの方法
VSCodeのLocal Historyから復元できる場合もある
VSCodeには「Local History」という機能があります。
Local Historyでは、ファイルを保存したときの過去の内容が履歴として残る場合があります。
TimelineからLocal Historyを確認する
VSCodeでは、ファイルを選択した状態でTimelineを確認すると、Local HistoryやGitの履歴などが表示されることがあります。
Local Historyが残っていれば、過去のファイル内容を確認したり、現在の内容と比較したり、以前の状態へ戻したりできます。
特に、
ファイルを編集
↓
保存
↓
内容を書き換えてしまった
↓
以前の内容へ戻したい
というケースでは、Local Historyが役立ちます。
TimelineはGit専用ではない
TimelineはGitのコミット履歴だけを表示する機能ではありません。
環境や拡張機能によっては、次のような履歴が表示されます。
Timeline
├─ Gitの履歴
├─ Local History
└─ その他の履歴情報
そのため、「Gitを使っていないからTimelineは使えない」とは限りません。
ターミナルで削除したファイルは注意が必要
VSCodeのターミナルからファイルを削除した場合は、Explorerから削除した場合とは挙動が異なることがあります。
たとえば、LinuxやmacOS、Git Bashなどで次のコマンドを実行した場合です。
rm sample.txt
一般的なrmコマンドは、VSCodeのExplorerにある削除機能とは別の仕組みで動作します。
そのため、ファイルがOSのごみ箱へ移動するとは限りません。
つまり、
VSCodeのターミナルで削除
=VSCodeのごみ箱機能が働く
というわけではありません。
ターミナルから削除コマンドを実行するときは、特に重要なファイルを誤って消さないよう注意しましょう。
Source Controlで未追跡ファイルを破棄するときも注意する
Git管理しているプロジェクトでは、Source Controlから変更を破棄する操作を行うことがあります。
現在のVSCodeでは、未追跡ファイルをDiscardした際に、可能であればOSのごみ箱へ移動する仕組みがあります。
この動作には、
git.discardUntrackedChangesToTrash
という設定が関係しています。
以前よりも未追跡ファイルを誤って失うリスクは抑えられていますが、環境や設定によって挙動が異なる可能性があります。
重要なファイルの場合は、Source Controlから変更を破棄する前に内容を確認しておくと安心です。
VSCodeでゴミ箱が見つからないのは異常ではない
VSCodeを初めて使う場合、「Explorerを開いたのにゴミ箱が表示されない」と戸惑うことがあります。
しかし、これは不具合ではありません。
VSCodeには、Windowsのごみ箱のような削除済みファイル一覧を表示する専用画面がないからです。
ファイルを削除したい場合は、
エクスプローラーを開く
↓
対象のファイルを右クリック
↓
削除(Delete)
と操作します。
削除済みファイルを探したい場合は、OS側のごみ箱を確認します。
VSCodeのゴミ箱に関するよくある勘違い
Explorer内にTrashフォルダがあると思っている
VSCodeのExplorerに、標準機能として「Trash」や「Recycle Bin」というフォルダが表示されるわけではありません。
Explorerは、現在開いているプロジェクトやワークスペース内のファイルを表示する機能だからです。
ターミナルのゴミ箱でファイルを削除できると思っている
ターミナル右上のゴミ箱アイコンは、ターミナルインスタンスを終了するためのボタンです。
プロジェクトファイルを削除するためのボタンではありません。
削除したファイルは必ずOSのごみ箱に入ると思っている
VSCodeのExplorerから通常の削除を行った場合でも、削除方法やファイルシステム、環境などによってはOSのごみ箱を経由できないことがあります。
また、ターミナルからrmなどのコマンドを実行した場合も、通常のExplorer削除とは扱いが異なります。
そのため、「VSCodeで消したから必ずごみ箱に残っている」と考えないほうが安全です。
VSCodeでファイルを誤って削除したときの確認順
誤ってファイルを削除した場合は、次の順番で確認すると効率的です。
1.OSのごみ箱を確認する
↓
2.VSCodeのSource Controlを確認する
↓
3.Local History・Timelineを確認する
↓
4.Gitのコミット履歴を確認する
特にGit管理されているプロジェクトでは、OSのごみ箱から復元できなくても、Gitの履歴から戻せる可能性があります。
Web制作やプログラミングで重要なファイルを扱う場合は、普段からGitなどで履歴管理しておくと安心です。
まとめ
VSCodeには、Windowsの「ごみ箱」のような削除済みファイル専用の保管画面はありません。
VSCodeのExplorerから通常の方法でファイルを削除し、OS側のごみ箱機能を利用できる場合は、Windowsの「ごみ箱」やmacOSの「ゴミ箱」へ移動します。
一方で、削除方法や環境によっては、ごみ箱を経由せず削除される場合があります。
また、VSCodeのターミナルに表示されるゴミ箱アイコンは、ファイルを削除するためのものではなく、ターミナルセッションを終了するためのボタンです。
誤ってファイルを削除した場合は、まずOS側のごみ箱を確認し、その後にVSCodeのSource Control、Local History、Gitの履歴などを確認するとよいでしょう。
特に重要なプロジェクトでは、Gitを利用して履歴を残しておくことで、ファイルを誤って削除した場合にも復元できる可能性が高まります。
以上、VSCodeのゴミ箱はどこにあるのかについてでした。
最後までお読みいただき、ありがとうございました。









