Git игнорировать несколько совпадающих файлов
Я пытаюсь игнорировать файл в каталоге по относительному пути. Например. У меня есть несколько каталогов в рабочем дереве lib/file.f
, и я хочу, чтобы все вхождения этого файла игнорировались. Я попробовал
lib/file.f
но это не работает.
Ответы
Ответ 1
Место
*/lib/file.f
в .gitignore
. Это приведет к тому, что git проигнорирует любой файл формы project/<DIR>/lib/file.f
, если .gitignore
находится в каталоге project
.
Чтобы сделать git игнорировать lib/file.f
два каталога вниз, вам также нужно добавить
*/*/lib/file.f
до .gitignore
и т.д.
Разумеется, проще было бы разместить
*file.f
в .gitignore
, чтобы заблокировать все файлы с именем file.f
, но ваш вопрос, кажется, предполагает, что есть хотя бы один файл по этому имени, которое вы не должны игнорировать.
Ответ 2
также вы можете удалить файл из кэша git, чтобы проверить, что вы просто проигнорировали:
git rm --cached lib/file.f
это, если вы уже добавили файл в git index
Ответ 3
Если вы хотите указать все подпапки в определенной папке, используйте /**/
. Чтобы игнорировать все file.f
файлы в папке /src/main/
и вложенных папок, используйте:
/src/main/**/file.f