Случайно удаленные файлы проекта xcode с помощью команд Git

Я случайно удалил все свои файлы, зафиксировав новую сборку, а затем удалив эту фиксацию. (git commit -m, git reset -hard HEAD^). Затем я попытался использовать (git merge), чтобы отменить удаление. Я заметил, что все отсутствующие файлы вернулись, но все содержимое отсутствовало. Чтобы уточнить, все файлы, которые отсутствовали после того, как я удалил фиксацию, вернулись, но содержимое этих файлов включало только разметки Xcode по умолчанию, и все мое кодирование все еще отсутствовало. Кто-нибудь знаком с такой проблемой? Любое руководство будет с благодарностью..

шаги:

  1. git commit -m
  2. git reset -hard HEAD ^
  3. мерзавец слияния

1 ответ

Решение

Вы должны быть в состоянии использовать git fsck, чтобы увидеть любые висячие сгустки или коммиты, которые остаются после сброса.

git fsck --cache --no-reflogs --lost-found --unreachable  HEAD

Вы увидите что-то подобное с любыми висящими объектами: введите описание изображения здесь

Тогда просто сделайте git show с идентификатором BLOB-объекта для проверки

git show fd2274ea24e214457fa865e6aa74a0a1b036291a

Если это файл, который вы хотите, вы можете записать его в файл, используя git show {blob id} > filename. например

git show fd2274ea24e214457fa865e6aa74a0a1b036291a > test.txt
Другие вопросы по тегам