Как восстановить удалённый файл в Git
Удалили важный файл в Git и не знаете, как его вернуть? Не переживайте — история изменений сохраняется, и вы легко можете восстановить файл.
🔍 1. Найдите коммит, где файл ещё существовал
Выполните команду:
git log --diff-filter=D --summary
Вы увидите список удалённых файлов и коммиты, в которых они были удалены.
Или просмотрите историю конкретного файла:
git log -- <путь/к/файлу>
♻️ 2. Восстановите файл с помощью git checkout
Если вы знаете хеш коммита, где файл ещё был в наличии:
git checkout <commit_hash>^ -- <путь/к/файлу>
Файл вернётся в рабочую директорию.
🕵️♂️ 3. Локальное удаление? Воспользуйтесь restore
Если файл был удалён, но не закоммичен:
git restore <путь/к/файлу>
Если файл был в stash:
git stash show -p | git apply -R
✅ 4. Закоммитьте восстановление
После восстановления:
git add <путь/к/файлу>
git commit -m "Восстановлен удалённый файл"
🧠 Полезные советы
- Используйте
gitk
илиgit log --graph
для визуального анализа истории. - Проверьте
.gitignore
— файл мог быть исключён. - GUI-инструменты облегчают восстановление: GitKraken, Sourcetree и др.
📌 Сводка
Метод | Когда использовать |
---|---|
git checkout <commit> | Файл удалён в предыдущем коммите |
git restore | Локальное удаление, ещё не закоммичено |
git stash | Файл был в stash |
Git ничего не теряет — нужно лишь знать, где искать.