Как удалить папку из удаленного репозитория git
4 года назад
Andrey Moshkov
Ответы
Если вы хотите удалить директорию из удаленного репозитория, но оставить её на вашем компьютере (например, вы ошибочно запушили директорию с локальным окружением .venv), то выполните следующие команды
Также добавьте имя директории или паттерн для исключения в .gitignore, чтобы в дальнейшем она не добавлялась в индекс
4 года назад
Ivan Mamtsev
Удалённый репозиторий меняют через коммит. Удалите папку локально, закоммитьте и отправьте изменения.
Удалить папку из репозитория и с диска
-r нужен для папок: удаление рекурсивное.
Удалить из репозитория, но оставить на компьютере
Так поступают, если случайно закоммитили node_modules, .venv или папку с логами:
--cached удаляет папку только из индекса Git, файлы на диске остаются. Строка в .gitignore не даст снова добавить папку командой git add ..
Папка удалена, но осталась в истории
Коммит удаляет папку из текущей версии. В старых коммитах она остаётся, и размер репозитория не уменьшится. Если в папке были пароли или ключи, их нужно вычистить из всей истории инструментом git filter-repo:
После этого все участники должны заново склонировать репозиторий. Утёкшие пароли и токены в любом случае смените: копия могла остаться у других.
Через интерфейс GitHub
Откройте папку, нажмите … справа вверху → Delete directory и подтвердите коммит. Локальную копию потом обновите командой git pull. Пустые папки Git не хранит: когда из папки удалён последний файл, она исчезает сама.
Проверка
Работу с Git и GitHub разбирают в бесплатном курсе «Основы Git».
9 дней назад
Никита Вихров






