6

gitで私がやったgit rm -r .

どうやら作業ディレクトリ内のすべてのファイルが削除されたため、これはばかげていました。これらのファイルの多くには、コミットされていない変更が含まれていました。私は愚かで、先週何もコミットしませんでした。

どうすればこれを元に戻すことができますか? git の最後のチェックインではなく、作業ディレクトリのすべての変更を元に戻したいです。

を実行するgit statusと、削除された約 200 個のファイルが表示されます。これらの多くは、保持したい作業ディレクトリに変更がありました。これどうやってするの?

4

2 に答える 2

13

できません。Git はファイルを削除しました。それらはなくなりました。ファイル回復ツールを使用してそれらを元に戻すことができるかもしれませんが、それは git の範囲をはるかに超えています。

頻繁にコミットしないと、VCS を使用する目的が損なわれます。


編集:私はそれを取り戻します!Git は驚くべきものであり、ファイルの blob を作成している可能性があります ( で鮮度をチェックするためだと思いますgit-status)。

このスレッドgit fsck --lost-foundは、まだリポジトリに含まれていない git オブジェクトを見つけるために使用することを提案しています。.git/lost-found/otherたくさんのファイルを;にダンプします。運が良ければ、いくつかはあなたの仕事になります。git prune -n(これは、以下とこの回答で説明されている と同じことを達成するためのやや簡単な方法です。)

于 2013-10-28T06:32:13.813 に答える