n1ro°
RU

Компьютеры · Инструкция

Как восстановить удалённый отслеживаемый файл в Git

Выполните `git status --short` и найдите строку удалённого файла. Если удаление не staged, выполните `git restore -- <pa

Редакция N1RO · Проверено

Короткий ответ

Если файл удалён только из working tree, используйте `git restore -- <path>`; если удаление уже staged, сначала `git restore --staged -- <path>`, затем обычный `git restore -- <path>`.

Проверка по порядку

  • Выполните `git status --short` и найдите строку удалённого файла.
  • Если удаление не staged, выполните `git restore -- <path>`.
  • Если удаление staged, сначала восстановите index командой `git restore --staged -- <path>`.

Исправление

  1. После снятия staged-удаления восстановите рабочую копию `git restore -- <path>`.
  2. Для версии из конкретного commit используйте `git restore --source=<commit> -- <path>`.
  3. Сравните результат через `git diff -- <path>` перед продолжением работы.

Как понять, что исправлено

  • Файл снова существует, git status показывает ожидаемое состояние, а git diff не содержит случайной потери нужных правок.

Важно

git restore заменяет содержимое выбранной версией. Перед восстановлением файла с несохранёнными правками сохраните нужную копию отдельно.

Что учитывать

git restore заменяет содержимое выбранной версией. Перед восстановлением файла с несохранёнными правками сохраните нужную копию отдельно.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. git-restore Documentation). Пример и формулировки — редакция N1RO на 2026-09-17.