Дополнительно
Как удалить локальные (неотслеживаемые) файлы из текущего рабочего дерева Git
Как удалить неотслеживаемые локальные файлы из текущего рабочего дерева?
6524
20
В соответствии с документацией Git git clean
Шаг 1 - показать, что будет удалено, используя опцию
-n
:Clean Step - остерегайтесь: при этом будут удалены файлы:
git clean -f -d
илиgit clean -fd
.git clean -f -X
илиgit clean -fX
.git clean -f -x
илиgit clean -fx
.Обратите внимание на разницу в регистре
X
для двух последних команд.Если в конфигурации
clean.requireForce
установлено значение "true" (по умолчанию), необходимо указать-f
, иначе ничего не произойдет.Дополнительную информацию см. в документации
git-clean
.Опции
Используйте
git clean -f -d
, чтобы убедиться, что каталоги также удалены.На самом деле ничего не удаляйте, просто покажите, что будет сделано.
Удалите неотслеживаемые каталоги в дополнение к неотслеживаемым файлам. Если неотслеживаемый каталог управляется другим Git-репозиторием, он не будет удален по умолчанию. Используйте опцию -f дважды, если вы действительно хотите удалить такой каталог.
Затем вы можете проверить, действительно ли ваши файлы удалены с помощью
git status
.Я удивлен, что никто не упомянул об этом раньше:
Это означает interactive, и вы получите быстрый обзор того, что будет удалено, предлагая вам возможность включить/исключить затронутые файлы. В целом, это все равно быстрее, чем выполнять обязательный
--dry-run
перед настоящей очисткой.Вам придется добавить
-d
, если вы также хотите позаботиться о пустых папках. В конце получается красивый псевдоним:Тем не менее, дополнительные интерактивные команды могут быть утомительны для опытных пользователей. В наши дни я просто использую уже упомянутую
git clean -fd
.git-clean
- удаление неотслеживаемых файлов из рабочего дереваЕсли отслеживаются каталог Git-репозиторий своего собственного (например, подмодуль), нужно использовать
-Ф
дважды:ГИТ чистые -Д -ф-ф
Простой способ, чтобы удалить все неотслеживаемые файлы
Чтобы удалить все неотслеживаемые файлы, простой способ заключается в Добавить все из них го и сброс РЕПО как ниже
Мне нравится
в Git тайник пуш-Щ
потому что вы можете отменить их с помощью Git Сташ поп`.Редактировать: также, я нашел способ, чтобы показать неотслеживаемый файл в заначке (например,
ГИТ показать тайник@{0}^3
) https://stackoverflow.com/a/12681856/338986EDIT2:
ГИТ заначку спасать
является устаревшим в пользу "толчок". Спасибо @сценария-волк.Это то, что я всегда использую:
Для очень большого проекта, который вы, возможно, захотите, чтобы запустить его пару раз.
git-clean - это то, что вы ищете. Он используется для удаления неотслеживаемых файлов из рабочего дерева.
Если нужно удалить неотслеживаемые файлы из конкретной поддиректории,
И комбинированный способ для удаления игнорируемых директорий/файлов и игнорируемые файлы.
после этого вам будут измененные файлы только в
состояние ЖКТ
.ГИТ чисто -ФД
удаляет каталогГИТ чистые -форекс
удаляет игнорируемые файлыГИТ в чистоте -Форекс
удаляет файлы игнорируются и ООН проигнорировалиможно использовать все вышеперечисленные варианты в сочетании как
ГИТ чисто -fdXx
проверьте руководство ГИТ для получения дополнительной помощи
Удалите все лишние папки и файлы в этом РЕПО + подмодули
Это получает вас в таком же состояние, как свежий клон.
Удалите все лишние папки и файлы в РЕПО, но не его подмодули
Удалить только дополнительные папки, но не файлы (например. строить папка)
Удалить лишние папки + игнорируемые файлы (но не все вновь добавленные файлы)
Если файл был'т игнорировать и еще не зарегистрировались, тогда она останется. Обратите внимание на заглавные буквы Х.
Новый интерактивный режим
ОК, удаление нежелательные неотслеживаемые файлы и папки легко, используя
ГИТ
в командной строке, просто делай так:Проверить прежде чем делать это, как это будет удалить файлы и папки без какой-либо истории...
Также в этом случае,
-Ф
обозначает силу и-Д
расшифровывается каталог...Поэтому, если вы хотите удалить только файлы, вы можете использовать
-Ф
всего:Если вы хотите удалить(папки) и файлы, вы можете удалить только игнорируемых директорий и файлов, как это:
Кроме того, вы можете использовать
-X флаг
для включая файлы, игнорируемые git. Это будет полезно, если вы хотите удалить все.И добавляя
-Я
флаг, заставляет git прошу у вас разрешения на удаление файлов по одному на ходу.Если вы не уверены и хотите проверить вещи во-первых, добавьте-Н флаг`.
Использовать опцию
-Q
, то если вы Don'т хочу видеть отчет после успешного удаления.Я также создать изображение ниже, чтобы сделать ее более запоминаемой, специально я видел, что многие люди путают
-F
для очистки папки иногда или как-то смешать его!<БР>
Лучший способ-использовать команду очистить
Это удаляет неотслеживаемый файлы, включая каталоги
(-д) и файлы, игнорируемые
ГИТ (-х)`.Кроме того, заменить аргумент
-Ф
, С-Н
выполнитьсухого хода
илия
для интерактивного режима, и он скажет вам, что будут удалены.Интерактивный подход пользователя:
-я для интерактивного<БР> -F для силы<БР> -D для каталога<БР> -X для игнорируемых файлов(добавить при необходимости)<БР><БР> Примечание: добавить -Н или -- "сухой ход", чтобы просто проверить, что он будет делать.
ГИТ чистые -ф -д -х $(ЖКТ Рэв-синтаксический анализ --шоу-ХДС)
относится к корневым каталогом, независимо от того, где вы его называете в хранилище дерево каталогов. Я использую его все время, как он не заставит вас оставить папку, где вы работаете сейчас и позволяет очистить & совершать прямо с того места, где вы находитесь.Будьте уверены, что флаги
-ф
,-д
,-х
соответствовать вашим потребностям:Есть и другие флаги также доступны, просто проверить ЖКТ почистить помочь.
Для меня только следующие работы:
Во всех остальных случаях, я получаю сообщение "и вприпрыжку каталог и" для некоторых подкаталогах.
Это лайфхак такой ситуации я просто выдумывали и пробовали (это прекрасно работает):
Внимание! Обязательно совершать любые необходимые изменения (даже не неотслеживаемые файлы) перед выполнением этой.
Если вы просто хотите, чтобы удалить файлы, помеченные как неотслеживаемые по 'статус ГИТ'
Я предпочитаю, чтобы это 'мерзавец чистым' потому что 'ГИТ чистый' будет удалить файлы игнорируемые git, поэтому ваш следующей сборке придется восстанавливать все и вы можете потерять настройки IDE.
Чтобы знать, что будут удалены перед удаление:
`ГИТ чистые -д -н -
Он будет выводить что-то вроде:
Будет удалить sample.txt
Чтобы удалить все данные, перечисленные в выводе предыдущей команды:
ГИТ чистые -Д -Ф
Он будет выводить что-то вроде:
Удаление sample.txt