VSCodeを使っている場合の解決策
誰もが少なくとも一回は経験したであろうGitの誤操作でデータぶっ飛ぶ問題、VSCode利用者のための最強の解決策を見つけてしまったかもしれません。
半月ほど前から初めてチーム開発を始め、Gitを勉強しながらコーディングし続ける日々の中、その出来事は起こりました。
チームメンバーの一人のプルリクエストでマージコンフリクトが発生し、解決しなければならない!すかさずGitHub Desktopをダウンロードしブランチを切り替えるがマージコンフリクトのエディタが見つからない。さあここでVSCodeを開いて、彼のブランチをcheckoutする。ローカルの変更をスタッシュ?何だそれ?ポチッ。
あれ?何かがおかしいぞ。ん?今日作ったはずのチャット画面が消えている。もしやこれは…
てなシチュエーションです。調べてみると、Gitはコミットした地点に巻き戻すことはできるが、コミットしていなかったらもう復元不可、ただしVSCodeユーザーには抗う術が与えられています。Git Checkoutと関連して記事が書かれていないので、備忘録も兼ねて今回共有することにしました。
解決策はとてもシンプルで、VSCodeのコマンドパレットで、Local History: Find Entry to Restoreというコマンドを実行するだけです。
これを実行したら、ファイルの検索画面が出てくるので、復元したいファイル名を検索しましょう。
復元したいファイル名が出てきたらそれを選択してエンター、もしくはクリックしてください。
こっから復元したいセーブ日時を選ぶと、右に現在のファイル、左に選択したセーブ日時のファイルが表示されます。
いつもVSCodeに助けられてばかりですね。もうNeoVimに乗り換えようとか言うのやめます。