Git удалить каталог
У меня есть репозиторий на GitHub ( http://github.com/hrickards/PHP-Crypto) для небольшого проекта, над которым я и несколько других работаем. Моя среда разработки - Aptana Studio, и я использую плагин EGit, поскольку Aptana - это в основном Eclipse. Сегодня дизайнер отправил HTML и CSS для сайта с изображениями в папку с именем img. Ранее изображения находились в папке с названием images. Ничего не думая об этом и лень обновлять CSS и HTML, я просто держал изображения в каталоге img и отправлял их в Git. Однако веб-интерфейс GitHub показывает каталоги img и images, а каталог images пуст. Я пытался удалить каталог изображений с git rm -r images
а также git rm images
, и даже mkdir images; git add images; git rm -r images
но что бы я ни пытался, я получаю тот же результат:fatal: pathspec 'images' did not match any files
,
Кто-нибудь получил какой-либо совет о том, как удалить изображения, или я неправильно понимаю Git или что-то?
4 ответа
Git не хранит никакой информации о каталоге, только файлы в нем. Таким образом, вы не можете добавлять или удалять каталоги сами; если ты скажешь git add images
, Git добавит все файлы в этом каталоге (которые не соответствуют списку игнорирования).
Как правило, единственный способ создать пустой каталог - если он действительно содержит файл, обычно скрытый файл, например .gitignore
,
Вы сказали, что видите images
каталог на GitHub, но я не вижу его в репозитории, на который вы ссылаетесь. Вы уверены, что это там, а не просто пустой каталог на вашем диске? Если это просто пустой каталог на вашем диске, вы можете просто удалить его, используя rm images
; Git не должен знать об этом.
Это то, что я использую, и я думаю, вы тоже захотите. Это близко к другим ответам, но дает команду git НЕ изменять локальные файлы.
git rm -r -f --cached DirectoryName
- -r: рекурсивный
- -f: сила
- --cached: применять ТОЛЬКО к индексу (промежуточная область). Git оставляет локальные копии в покое.
Связанный репозиторий GitHub не показывает каталог изображений.
Git не хранит пустые каталоги по техническим причинам, поэтому просто попробуйте rm images
и удалите каталог изображений из вашей локальной иерархии каталогов.