Я клонировал репозиторий с данными 3.8G
. (Ну, граничащая глупость, но я по ошибке загрузил набор данных изображения.) Теперь я хотел бы удалить его, но git rm -r
не удаляет его. Мне нужно, чтобы этот каталог был удален как из локального, так и из удаленного репозитория master
. Команда работает уже более 2 days
. Я считаю, что он застрял. Пожалуйста, я был бы очень признателен, если бы кто-нибудь мог подсказать мне выход из этой ситуации. Спасибо.
Я удаляю каталог x
, и я хочу его зафиксировать, и нажимаю изменения. Я бы хотел, чтобы x
был полностью удален отовсюду, удаленно (через Интернет) и локально.
Вы хотите удалить изображения из локального репозитория.
В командной строке выполните rm -rf x
, где x
- это каталог, содержащий изображения, -r
- рекурсивный флаг, используемый для удаления каталогов и подкаталогов, содержащихся внутри, а -f
- это флаг принудительного удаления защищенных файлов.
Вы не хотите, чтобы изображения были отправлены в базу кода / онлайн-репозиторий.
Если вы уже удалили файлы из локального репозитория, вы можете проверить, был ли удален каталог, выполнив команду git status
. Удаленный каталог должен быть напечатан красным шрифтом. Все, что вам нужно сделать, это git rm x
, чтобы подтвердить, что каталог будет удален и будет удален из кодовой базы / онлайн-репозитория. Затем, конечно, запустите git commit
, а затем git push <origin> <master>
.
Хотя вы сказали, что хотите удалить набор изображений, в следующий раз, если вы хотите сохранить его локально, но не допустить его отправки в базу кода / онлайн-репозиторий, создайте файл .gitignore
и укажите каталог или тип файла, который не хочет отправить. Учебник по файлам .gitignore
можно найти здесь.
Спасибо. но прямо сейчас каталог x
уже удален. Мне нужно удалить его, как с локального, так и с master
, то есть онлайн. Я могу сделать это двумя способами, если я правильно понимаю, я могу использовать rm -rf
(команда unix), а затем сделать git commit и нажать. Второй вариант - использовать git rm -r
. Проблема в том, что если я использую первый вариант, то есть использую команду unix rm -rf
, git commit успешно завершается, но git push застревает и часами остается на 0%
. Если я использую второй вариант, то есть git rm -r
, для удаления каталога x
, команда получает снова застрял. Полтора дня ждал, когда он вернется.
Альтернативный совет очень полезен. Спасибо.
@Ahsan Что касается двух предложенных мной решений, вам нужно будет сделать оба, чтобы достичь желаемого результата: решение 1, затем решение 2. Решение 1 не имеет ничего общего с git - это просто команда unix. Чтобы зафиксировать и продвинуть изменения, иногда я замечаю, что мне нужно нажать «ввод», иначе изменения не отображаются. Убедитесь, что вам предлагается ввести свои учетные данные git и еще много чего.
Что вы пытаетесь достичь? Просто удалить файлы из локального репозитория или предотвратить их копирование на
git push
?