Это команда git-rm, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
git-rm - Удаляет файлы из рабочего дерева и индекса
СИНТАКСИС
мерзавец rm [-f | --force] [-n] [-r] [--cached] [--ignore-unmatch] [--quiet] [-] ...
ОПИСАНИЕ
Удалите файлы из индекса или из рабочего дерева и индекса. git rm не будет
удалите файл только из вашего рабочего каталога. (Нет возможности удалить только файл
из рабочего дерева и при этом сохранить его в индексе; использовать / bin / rm если вы хотите это сделать.)
Удаляемые файлы должны быть идентичны верхушке ветки, и никаких обновлений для
их содержимое может быть помещено в индекс, хотя это поведение по умолчанию можно переопределить
с опцией -f. Когда указан --cached, поэтапный контент должен соответствовать либо подсказке
ветви или файла на диске, что позволяет удалить файл только из индекса.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
...
Файлы для удаления. Можно указать файловые глобусы (например, * .c) для удаления всех совпадающих файлов. Если
если вы хотите, чтобы Git расширял символы глобуса файла, вам может потребоваться экранирование их оболочки. А
ведущее имя каталога (например, dir для удаления dir / file1 и dir / file2) может быть присвоено
удалить все файлы в каталоге и рекурсивно все подкаталоги, но это
требует явного указания опции -r.
-ф, --сила
Отменить проверку актуальности.
-n, -- пробный запуск
Фактически не удаляйте никакие файлы. Вместо этого просто покажите, существуют ли они в индексе и
в противном случае будет удален командой.
-r
Разрешить рекурсивное удаление, если указано имя каталога в начале.
--
Этот параметр можно использовать для отделения параметров командной строки от списка файлов,
(полезно, когда имена файлов могут быть ошибочно приняты за параметры командной строки).
--кешированный
Используйте эту опцию, чтобы деактивировать и удалить пути только из индекса. Файлы рабочего дерева,
изменено или нет, останется в покое.
--игнорировать-несопоставление
Выйти с нулевым статусом, даже если файлы не найдены.
-к, --тишина
git rm обычно выводит одну строку (в виде команды rm) для каждого удаленного файла.
Эта опция подавляет этот вывод.
ОБСУЖДЕНИЕ
В список, передаваемый команде, может быть точными именами пути, шаблонами файловых глобусов или
ведущие имена каталогов. Команда удаляет только пути, известные Git. Давая
имя файла, о котором вы не сообщили Git, не удаляет этот файл.
Подстановка файлов соответствует границам каталогов. Таким образом, учитывая два каталога d и d2,
существует разница между использованием git rm 'd *' и git rm 'd / *', поскольку первое также будет
удалить весь каталог d2.
УДАЛЕНИЕ FILES ЧТО ИМЕТЬ ИСЧЕЗ от ФАЙЛОВАЯ СИСТЕМА
Для git rm нет возможности удалить из индекса только те пути, которые имеют
исчез из файловой системы. Однако, в зависимости от варианта использования, существует несколько
способы, которые можно сделать.
. «Мерзавец совершать -a »
Если вы предполагаете, что ваша следующая фиксация должна записывать все модификации отслеживаемых файлов в
рабочее дерево и записывать все удаления файлов, которые были удалены из рабочего дерева
tree с помощью rm (в отличие от git rm), используйте git commit -a, так как он автоматически заметит
и запишите все удаления. Вы также можете добиться аналогичного эффекта без фиксации, используя
git добавить -у.
. «Мерзавец -A »
Принимая новый код для ветки поставщика, вы, вероятно, захотите записать как
удаление путей и добавление новых путей, а также модификации существующих путей.
Обычно вы сначала удаляете все отслеживаемые файлы из рабочего дерева, используя этот
команда:
git ls-файлы -z | xargs -0 пм -f
а затем распаковать новый код в рабочем дереве. В качестве альтернативы вы могли бы Rsync перемены
в рабочее дерево.
После этого самый простой способ записывать все удаления, дополнения и модификации в
рабочее дерево:
git добавить -A
Увидеть git-добавить(1).
Другой способы
Если все, что вам действительно нужно, это удалить из индекса файлы, которые больше не
присутствует в рабочем дереве (возможно, потому что ваше рабочее дерево грязное, так что вы не можете
используйте git commit -a), используйте следующую команду:
git diff --name-only --diff-filter = D -z | xargs -0 git rm --cached
ПОДМОДУЛИ
Только подмодули, использующие gitfile (что означает, что они были клонированы с помощью Git версии 1.7.8 или
новее) будут удалены из рабочего дерева, так как их репозиторий находится внутри .git
каталог суперпроекта. Если подмодуль (или один из вложенных в него) все еще
использует каталог .git, git rm не сработает - независимо от того, принудительно он или нет - для защиты
история подмодуля. Если он существует, то подмодуль. раздел в gitmodules(5) файл
также будет удален, и этот файл будет поставлен (если не используются --cached или -n).
Подмодуль считается актуальным, если HEAD совпадает с записанным в указателе,
отслеживаемые файлы не изменяются, а неотслеживаемые файлы, которые не игнорируются, отсутствуют в
дерево работы подмодулей. Игнорируемые файлы считаются расходуемыми и не останавливают работу подмодуля.
дерево работы от удаления.
Если вы хотите удалить только локальную проверку подмодуля из своего рабочего дерева без
совершая удаление, используйте git-подмодуль(1) вместо этого deinit.
ПРИМЕРЫ
git rm Documentation / \ *. txt
Удаляет все файлы * .txt из индекса, которые находятся в каталоге документации и
любой из его подкаталогов.
Обратите внимание, что в этом примере звездочка * цитируется в оболочке; это позволяет Git и
не оболочку, разверните пути к файлам и подкаталогам в
Документация / каталог.
git rm -f git - *. sh
Поскольку этот пример позволяет оболочке развернуть звездочку (т.е. вы перечисляете
файлы явно), он не удаляет подкаталог / git-foo.sh.
Используйте git-rm онлайн с помощью сервисов onworks.net