объяснить соответствие gitignore

У меня есть следующее дерево каталогов:

> #pwd is the repo   
> tree -a
.
├── .git
│   |.....
├── .gitignore
├── README.md
├── f1.html
├── f2.html ... and some more html
├── images
│   └── river.jpg
>

У меня также есть следующее в моем.gitignore:

> cat .gitignore
*
!*.html
!images/*.*
>

Я хотел бы, чтобы все файлы в каталоге изображений были включены в репозиторий. Но этого не происходит. Я получил его на работу, используя следующее в gitignore:

*
!*.html
!images*
!*.jp*g

Что здесь происходит? Есть ли надежный способ тестирования гитиньора. Я проверилдокументация, Вот в чем дело, это не понимаю (это подформат шаблона заголовок):

В противном случае Git обрабатывает шаблон как глобус оболочки, подходящий для использования fnmatch (3) с флагом FNM_PATHNAME: подстановочные знаки в шаблоне не будут совпадать с / в имени пути. Например, «Documentation / *. Html» соответствует «Documentation / git.html», но не «Documentation / ppc / ppc.html» или «tools / perf / Documentation / perf.html».

Ответы на вопрос(1)

Ваш ответ на вопрос