Дополнительно
Как удалить каталог из git-репозитория?
В моем репозитории GitHub есть 2 каталога. Я хотел бы удалить один из них. Как это можно сделать, не удаляя и не создавая заново весь репозиторий?
1125
14
Удаление каталога из git и local
Вы можете проверить 'master' с обоими каталогами;
Удаление каталога из git, но НЕ из local
Как уже упоминалось в комментариях, обычно требуется удалить каталог из git, но не удалять его полностью из файловой системы (локально)
В этом случае используйте:
Для удаления папок/только из репозитория, а не из местных попробовать 3 простых команд.
Шаги, чтобы удалить папку
Шаги, чтобы игнорировать эту папку в следующей совершает > в игнор эту папку из следующего обязывает сделать один файл в корне с именем .гитюдного > и положить, что имя папки в него. Вы можете положить столько, сколько вы хотите
.гитюдного файл будет выглядеть так
Если по каким-то причинам сказанное karmakaze не помогло, можно попробовать удалить нужный каталог с помощью обозревателя файловой системы (например, в проводнике Windows File Explorer). После удаления каталога выполните команду:
git add -A
и затем
git commit -m 'deleting directory'
и затем
git push origin master
.Вы можете попробовать это:
ГИТ РМ -РФ <параметра directory_name>
Это заставит удалить каталог.
Если вы удалите файлы в каталоге (с помощью
git rm
, как объясняется в других ответах), то каталог перестанет существовать для git. Вы не можете зафиксировать пустой каталог, равно как и удалить его.Это отличается от subversion, где нужно явно указать
svn rm emptyfolder/
, и, кстати, именно поэтому страницаman
для git описывает себя как "глупый трекер содержимого"Ответ на вопрос "Как добавить пустой каталог в git-репозиторий" ссылается на FAQ по этой теме:
Перейти в каталог git'а затем введите следующую команду: РМ -РФ
После удаления каталога совершать изменения: коммит в git'е -м "в свое сообщение и"
Затем просто нажимаем изменения на удаленный каталог в Git: ГИТ пуш происхождения
Вы можете удалить папку локально, а затем толчок, как следовать:
Я обычно использую команду git добавить-все` для удаления файлов / папок от удаленных репозиториев
"мастер" можно заменить на любое другое отделение хранилища.
для удаление пустых папок
я хотел удалить пустой каталог(папку), который я создал, Git не можете удалить его, после некоторых исследований я узнал ГИТ не'т отслеживать пустые каталоги. Если у вас есть пустой каталог в вашем рабочем каталоге, вам следует просто удалить его с
Нет необходимости привлекать ГИТ.
Вы можете использовать Attlasian исходного дерева (окон) (https://www.atlassian.com/software/sourcetree/overview). Просто выберите файлы из дерева и кнопка на "Удалить" и на самом верху. Файлы будут удалены из локального хранилища и локальной базы данных в Git. После фиксации, затем нажмите.
Я уже совершил папку перед и хотите удалить каталог в истории.
Я сделал следующее:
Добавить папку
.гитюдного
:Удалить из всех коммитов:
удалить ссылки из старых коммитов:
Убедитесь, что все старые ссылки будут полностью удалены
Выполнять сбор мусора
подтолкнуть вас изменения в онлайн-хранилище:
Вы сделали здесь.
Но вы можете получить следующую спихнуть все изменения во все ветки: Но будьте осторожны с этой командой!
После этого папка была удалена из Git, но не был удален с локального диска.
Один мой коллега предложил БФГ РЕПО-чистильщик, который я думаю, мощный. Это не только удаление нежелательных данных, но и очистить свой репозиторий от любой связанной с фиксацией информации.
Чтобы добавить новую папку:
Но теперь Git не в курсе этого нового каталога, потому что Git держите треков файл не директории Каталог
ГИТ выиграл'т быть в курсе тех изменений, которые мы'ве сделали, поэтому мы добавляем скрытый `.сохранить файл, чтобы знать Git с этими изменениями.
Теперь, если вы нажмете
статус ГИТ
git будут осведомлены с изменениями.И если вы хотите удалить каталог, вы должны использовать эту команду.
И если вы проверили с помощью
статус ГИТ
, вы увидите каталог был удален.Первая команда git нужно знать, кто ты, прежде чем удалять что-либо <пр> <ли>ГИТ инит</ли> <ли>ГИТ конфиг пользователя.именем "кто-то"</ли> <ли>ГИТ конфиг пользователя.электронной почты и"someone@someplace.com"</ли> <ли> ГИТ РМ -Р <реж></ли> <ли>коммит в git'е -м "и удаление Дир" и</ли> <ли>git толчок происхождение мастер</ли></пр>