объяснить соответствие 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».