Как удалить локальные (неотслеженные) файлы от текущего Мерзавца рабочее дерево

Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException вообще.

См. также: A хороший список лучших практик

Я бы добавил, очень важно, хорошо использовать модификатор final. Использование "окончательной" модификатор, когда это применимо в Java

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

6553
задан Peter Mortensen 4 August 2019 в 09:19
поделиться

4 ответа

Согласно Документации Мерзавца мерзавец, чистый

, Удаляет неотслеженные файлы из рабочего дерева

<час>

, Шаг 1 должен показать то, что будет удалено при помощи -n опция:

# Print out the list of files which will be removed (dry run)
git clean -n

Чистый Шаг - остерегайтесь: это удалит файлы :

# Delete the files from the repository
git clean -f
  • Для удаления каталогов работайте git clean -f -d или git clean -fd
  • , Чтобы удалить проигнорированные файлы, работать git clean -f -X или git clean -fX
  • , Чтобы удалить проигнорированные и непроигнорированные файлы, работать git clean -f -x или git clean -fx

Примечание различие в случае на X для двух последних команд.

, Если clean.requireForce установлен на "истинный" (значение по умолчанию) в Вашей конфигурации, нужно определить -f иначе, ничего на самом деле не произойдет.

Снова посмотрите git-clean документы для получения дополнительной информации.

<час>

Опции

-f, --force

, Если переменная конфигурации Мерзавца clean.requireForce не установлена на ложь, чистый мерзавец откажется работать, если не дали -f, -n или -i.

-x

Don’t используют стандарт, игнорируют правила, прочитанные из .gitignore (на каталог) и $GIT_DIR/info/exclude, но действительно все еще используют проигнорировать правила, данные с [1 120] опции. Это позволяет удалять все неотслеженные файлы, включая продукты сборки. Это может использоваться (возможно в сочетании со сбросом мерзавца) для создания нетронутого рабочего каталога для тестирования чистой сборки.

-X

Удаляют только файлы, проигнорированные Мерзавцем. Это может быть полезно, чтобы восстановить все с нуля, но сохранить вручную созданные файлы.

-n, -dry-run

Don’t на самом деле удаляют что-либо, просто показывают то, что было бы сделано.

-d

Удаляют неотслеженные каталоги в дополнение к неотслеженным файлам. Если неотслеженным каталогом управляет различный репозиторий Мерзавца, он не удален по умолчанию. Используйте -f опция дважды, если Вы действительно хотите удалить такой каталог.

8449
ответ дан 22 revs, 20 users 20% 22 November 2019 в 19:37
поделиться

чистый мерзавцем то, что Вы ищете. Это используется для удаления неотслеженных файлов из рабочего дерева.

87
ответ дан Peter Mortensen 22 November 2019 в 19:37
поделиться

Используйте git clean -f -d , чтобы убедиться, что каталоги также удалены.

-n, -dry-run

На самом деле ничего не удаляйте, просто показывайте что будет сделано.

-d

Удалите неотслеживаемые каталоги в дополнение к неотслеживаемым файлам. Если неотслеживаемый каталог управляется другим репозиторием Git, он не удаляется по умолчанию. Дважды используйте параметр -f, если вы действительно хотите удалить такой каталог.

Затем вы можете проверить, действительно ли ваши файлы исчезли с помощью git status .

933
ответ дан 22 November 2019 в 19:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: