結論
下記のコマンドを使ってブランチを切り替えることで復活可能です。
git checkout ブランチ名 -f
■大まかな手順
1.今いるブランチの変更を全て破棄して、別のブランチに切り替える
2.また元のブランチに戻る(終わり)
例
例えば以下のような構成のviewディレクトリを間違って消してしまったとする
//間違って消す前のディレクトリ構成
sample
|__app
| |__test.php
|
|__view ←←←←←←←←今回はこのディレクトリを間違って消します
|__sample.html
↓↓↓↓↓↓
//間違って消してしまった後のディレクトリ構成
sample
|__app
|__test.php
手順
消してしまった今のブランチの変更を全て破棄して、別のブランチに切り替えます
// 今いるブランチを確認(今回の場合はhogeブランチにいるとします)
$ git branch
* hoge
develop
main
// 何でもいいので別のブランチに変更します。(-fを必ずつけます。)
$ git checkout develop -f
また元いたブランチに切り替えます
切り替えた時点で戻っているとディレクトリが復活していると思います。
// 元のブランチに戻る(今度は-fつける必要はない)
$ git checkout hoge
解説
ポイントとなる下記のコマンドの-f
の意味は何か?
git checkout ブランチ名 -f
意味としては__そのブランチで行っていた変更内容を破棄する__となります。
今回の例で言うと、hogeブランチで行っていた作業内容を一旦破棄して、developブランチに移動するということになります。
そのため再びhogeブランチに戻ってきた時は、viewディレクトリを消す前の状態のhogeブランチに戻ってきたということになります。