Я пытаюсь удалить папку из моего репозитория Git с помощью
git rm folderToRemove
но Git выдает эту ошибку, когда я пытаюсь это сделать.
fatal: pathspec 'siteFiles/applicationFiles/templates/folderToRemove'
did not match any files
Мой текущий каталог - "templates". Я нахожу эту ошибку странной, так как я могу cd
войти в папку "folderToRemove", так что она явно существует. Что означает эта ошибка?
решение1
Git не версионирует каталоги, только «контент» (содержимое каталога или файлы)
не найдено ни одного файла
Это означает, что внутри нет файла, который можно было бы удалить folderToRemove
, как я уже упоминал в "Невозможно рекурсивно удалить файлы из Git".
Теперь вы можете удалить (Windows del
или Unix rm
) сам каталог.
Как описано в "Удаление пустых каталогов в Git", вы также можете запустить:
git clean -fd
Однако:
Предупреждение: команда clean удаляет все файлы в текущей рабочей копии, которые не отслеживаются git. Это хороший способ потерять свою работу, если вы не добавляли новые файлы в git. Всегда запускайте
git add
передgit clean
.
Сначала запустите:
git clean -d -x -n
Как поясняется в "Как очистить локальный рабочий каталог в git?".