git clean -d -f удаляет каталоги, содержащие файлы, которые игнорируются. Могу ли я сохранить игнорируемые файлы и по-прежнему запускать git clean -d?

git clean -d -f удаляет каталоги, содержащие файлы, которые игнорируются Могу ли я сохранить игнорируемые файлы и по-прежнему запускать git clean -d?

Пример:

dir\dir2\file1

.gitignore:

dir\dir2

git clean -d -f удаляет dir и все это содержимое. Я ожидаю, что это поймет, что я игнорирую dir\dir2\file1 и не удалять file1,

1 ответ

Я наблюдал такое же поведение и не могу найти его в списке ошибок. Это, конечно, все еще поведение в git 2.0.4.

Обходной путь, который я нашел, это добавить фиктивный файл в пустой каталог, содержащий игнорируемый файл, чтобы он больше не рассматривался -dнапример,

/dir
  /dir2
    /file1
    /.marker

Будучи .dotfile, он игнорируется в списке каталогов, поэтому он довольно ненавязчив и сохраняет каталог на месте.

Другие вопросы по тегам