Можно ли восстановить удаленные неиспользуемые файлы в git?
скажем вчера, что я сделал некоторые изменения в моей мастер-ветке, и я забыл добавить, зафиксировать их. и утром я сделал
git reset --hard
Можно ли восстановить удаленные файлы в этой ситуации?
Ответы
Ответ 1
Некоторые лучшие IDE отслеживают ваши файлы как локальную историю. Если вы удалили файлы извне (например, git reset
), вы сможете щелкнуть в своей среде IDE в родительском каталоге и выбрать "Сравнить с местной историей".
Я успешно использовал эту функцию в PHPStorm
IDE, когда мои незатребованные файлы были уничтожены какой-то утилитой...
Ответ 2
Нет. Это не так.
Ответ 3
git reset --hard
- очень опасная команда, поэтому будьте осторожны, когда вы ее используете в следующий раз:)
Если у вас нет фиксации для этих файлов, кажется, у вас нет шансов восстановить их.
В противном случае команда reflog может вам помочь.
Ответ 4
( Примечание: шаги, похоже, немного изменились, поскольку принятый ответ был отправлен. Но идея остается прежней.)
Чтобы добавить к принятому ответу, мне удалось восстановить мои удаленные файлы с помощью Webstorm 2016.
Ответ 5
git reset --hard
не удалит ненужные файлы. git clean
, однако.
Однако если вы git add
файлы, не git commit
их, а затем запустите git reset --hard
те файлы будут потеряны.
Но это нормально, поскольку они могут быть восстановлены, как показано в этом ответе. (Ну, до следующего git gc
).
Ответ 6
Вы не можете получить доступ к предыдущей версии необработанных удаленных файлов из git, потому что из coruse их не существует. Я бы восстановил их из резервной копии (возможно, есть скрытые файлы резервных копий, оставленные ide/editor?), Или, альтернативно, я бы не стал слишком много работать над этой файловой системой и начал поиск средств восстановления.
Ответ 7
git fsck
может вам помочь.
Если вы еще не выполнили сборку мусора, она может вам помочь. Когда у вас есть идентификатор BLOB-объекта, вы можете сказать:
git show {blobId}
Ответ 8
В Intellij, как восстановить неотслеживаемые отмены изменений
Шаг 1. Выберите папку, щелкните по ней правой кнопкой мыши
Setp 2: Перейти к локальной истории, а затем перейти к Показать историю
![enter image description here]()
Шаг 3: Выберите неотслеживаемые файлы, которые вы случайно вернули. затем выберите эти файлы на правой боковой панели и отмените изменения, вы получите файлы в обратном формате.
![enter image description here]()