git init / build.sh удалил все файлы на рабочем столе - PullRequest
1 голос
/ 27 марта 2019

Я не совсем уверен, как это произошло (немного любитель, когда дело доходит до git), но каким-то образом, после выполнения git init, весь мой рабочий стол был удален (много файлов). Я пробовал много предложений от поиска Google, таких как «git reset --hard refs / original / refs /head / master» и еще много чего, но он всегда возвращается с ошибками. Я пытался перечислить ветки, оформить заказ и войти, но все они ничего не возвращают ...? Я полностью потерян - я просто хочу вернуть свои файлы. Я не уверен, были ли они удалены или перемещены .... В настоящее время у меня есть около 60 ГБ свободного места, но я не могу вспомнить, что у меня было до аварии - я знаю, что у меня было где-то около 40 за последние несколько дней, так что, возможно, это ушло? Я не уверен, помню ли я, что убирал место недавно Если это имеет значение, я на Mac.

Редактирование: Здесь есть почти все (команды, которые, по-видимому, связаны с этим, ссылка на программу, которую я устанавливал, и ее build.sh) Кажется, что это был не git init, а что-то из-за ошибки при сборке .Sh? https://docs.google.com/document/d/1_NH1iDkHP6u5PTUYtxbCMJDB8MMqNCUdhnD4yXk3F6E/edit?usp=sharing

1 Ответ

1 голос
/ 27 марта 2019

Git init не должен ничего удалять, он создает новую папку с именем .git в любом каталоге, из которого вы выполняете команду.Теперь то, что он не должен делать, вам мало поможет, учитывая, что ЧТО-ТО произошло, но я на 99% уверен, что на самом деле ничего не было удалено, так как команда git init не имеет вызовов для удаления файлов.Даже если вы git init в каталоге, полном файлов, он просто инициализирует этот каталог .git.Теперь я могу предположить, что файлы вашего рабочего стола каким-то образом были помещены в этот каталог .git (по умолчанию это скрытый каталог), и что все ваши файлы там, просто скрытые.Если вы работаете в системе Unix, не могли бы вы попробовать ls -la на /Desktop и посмотреть, есть ли скрытый каталог .git с чем-либо в нем.В системе Windows вы можете начать вводить «Показать скрытые папки» в меню «Пуск», и оно должно дать вам возможность просмотреть все скрытые папки (а затем проверить то же, что и выше, если скрытая папка .git существует где-либо на рабочем столе или рядом с нимкоторый содержит все ваши файлы. git init тоже ничего не должен перемещать, но, возможно, что-то пошло не так?

Редактировать: Итак, вот что, по моему мнению, пошло не так ...

git init был выполнен в каталоге '~ /', этот репозиторий 'waifu2x-mac' был клонирован / загружен на рабочий стол. Build.sh запускался из терминала из папки 'Desktop / waifu2x-mac,

  • первая строка компакт-диска со сценарием в каталог сценария
  • затем он выполняет некоторые действия, чтобы увидеть, есть ли какие-либо неотслеживаемые файлы в текущем каталоге (который был местом сборки.sh)
  • , поскольку ничего не отслеживалось, поскольку это был новый клон репозитория, он удалил все в текущем каталоге (/ Desktop / waifu2x-mac)
  • Это включало сборку.ш ффайл, который был запущен в данный момент, а также все, что с этим связано.
  • Затем он пытается создать компакт-диск в / Directories, который не существует, что вызывает сбой сценария.
  • ???происходит, и теперь он рассматривает репозиторий git, расположенный в каталоге ~ ~ / git, из которого был запущен этот сценарий
  • Затем сценарий выполняет свою команду условия сбоя, которая является git clean -dffx

по сути, это запускает rm -rf, но только для всех неотслеживаемых файлов в текущем каталоге git , который находится внутри '~ /' .-d определяет все каталоги, а 'ffx' в значительной степени говорит: 'принудительно удаляйте все, включая все, что разрешено.'Git clean, к сожалению, не может быть отменен, так как он не отслеживает никаких изменений.

на данный момент, у вас есть ограниченные возможности, без каких-либо гарантий.Перейдите по этой ссылке и попробуйте некоторые из перечисленных там советов (например, extundelete и средство восстановления USB) Можно ли отменить `git clean -fdx`?

Удачи вам-когда все это будет сделано, я определенно открою вопрос об этом репозитории waifu2x-mac и свяжу этот вопрос в выпуске.Даже при наличии ошибки пользователя никогда не должно быть проблемы, когда программа имеет автономность к RECURSIVELY DELETE EVERYTHING , не связанной с ней, особенно в случае сбоя.(также почему он вернулся к родительскому репозиторию git и выбрал место, из которого нужно удалить, мне не подходит ...)

Также мой комментарий ниже о том, что у git нет команд для удаления файлов, был совершенно неверным, и яхорошо это осознаю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...