gitignore - разрешать только определенные расширения и файлы

Не уверен, почему это не работает, так как я сделал это загружается! Может быть, у меня плохой день...

Я использую следующий код, чтобы игнорировать все файлы, кроме определенных имен файлов и расширений

*
!.gitattributes
!.gitignore
!readme.md
!.gitkeep
!*.php

По какой-то причине он позволяет мне фиксировать только файлы.gitignore и readme.md, даже если у меня есть файлы php в подпапках и т. Д. Что-то не так с этим? Просто к сведению, я использую "git add -A", чтобы забрать файлы для фиксации.

Заранее спасибо!

2 ответа

Решение

Решение состоит в том, чтобы сказать Git не игнорировать подкаталоги:

*
!.gitattributes
!.gitignore
!readme.md
!.gitkeep
!*.php
!*/

В противном случае только *.php файлы на первом уровне каталогов будут приняты, и все подкаталоги будут проигнорированы.

Самый сложный метод для достижения этой цели

Создайте .gitignore файл в хранилище root и добавьте следующие строки в .gitignore файл

*.*
!.gitattributes
!.gitignore
!readme.md
!.gitkeep
!*.php

это будет включать все указанные файлы из каталога и подкаталога рекурсивно.

проверено на

git версия 2.12.2.windows.2

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