Как восстановить удалённый файл в 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 ничего не теряет — нужно лишь знать, где искать.