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 нет команд для удаления файлов, был совершенно неверным, и яхорошо это осознаю.