если вы говорите об удалении файлов и выполнении этого удаления, вам следует использовать
git rm filename
Эта команда удалит сам файл и сразу же установит удаление для фиксации.Таким образом, в этом случае вам нужно будет только выполнить
git commit -m "Remove files" #everything staged will be committed
Кстати, то же самое верно, когда вы хотите переместить или переименовать файлы.Не делайте этого с помощью команды shell move, а используйте «git mv [source] [destination]»
Теперь, если вы удалили их без использования «git rm»
, вам нужно поставитьсначала их:
git add -u
git commit -m "Remove files"
Теперь, если вы хотите, чтобы они исчезли из всей истории, поэтому никаких упоминаний об этих файлах не будет, тогда вы должны использовать
git filter-branch
Документация по ветке фильтра Git
Обратите внимание, что в большинстве случаев вам не нужно использовать команду filter-branch, поскольку это довольно сложный процесс.Лучший пример использования - если вы передали файл с важной информацией, такой как номер вашей кредитной карты и срок действия, и отправили этот файл в общедоступное хранилище.В этом случае изменение этого значения на какое-то не относящееся к делу значение или удаление файла недостаточно - вы должны использовать ветвь фильтра;) ... И молиться, чтобы никто не был достаточно быстр, чтобы извлечь из вашего репозитория;) ... А затем сообщить свойкредитная карта все равно украдена ...;)