Примечание: если вы хотите удалить файл только из git, используйте ниже:
git rm --cached file1.txt
Если вы хотите удалить также с жесткого диска:
git rm file1.txt
Если вы хотите удалить папку (папка может содержать несколько файлов), вы должны удалить ее с помощью рекурсивной команды, как показано ниже:
git rm -r foldername
Если вы хотите удалить папку внутри другой папки
git rm -r parentFolder/childFolder
Тогда вы можете commit
и push
как обычно. Однако, если вы хотите восстановить удаленную папку, вы можете выполнить следующее: возможно восстановление удаленных файлов из git.
Из документа:
git rm [-f | --force] [-n] [-r] [--cached] [--ignore-unmatch] [--quiet] [--] <file>…
OPTIONS
<file>…
Files to remove. Fileglobs (e.g. *.c) can be given to remove all matching files. If you want Git to expand file glob characters, you
может понадобиться убежать от них. Ведущее имя каталога (например, dir to
удалить каталоги / файл1 и каталоги / файл2) можно удалить все файлы в
каталог, и рекурсивно все подкаталоги, но это требует
опция -r должна быть указана явно.
-f
--force
Override the up-to-date check.
-n
--dry-run
Don’t actually remove any file(s). Instead, just show if they exist in the index and would otherwise be removed by the command.
-r
Allow recursive removal when a leading directory name is given.
--
This option can be used to separate command-line options from the list of files, (useful when filenames might be mistaken for
параметры командной строки).
--cached
Use this option to unstage and remove paths only from the index. Working tree files, whether modified or not, will be left alone.
- игнорировать-unmatch
Exit with a zero status even if no files matched.
-q
--quiet
git rm normally outputs one line (in the form of an rm command) for each file removed. This option suppresses that output.
Подробнее на официальном документе.