explicar la coincidencia de patrones de gitignore
Tengo el siguiente árbol de directorios:
> #pwd is the repo
> tree -a
.
├── .git
│ |.....
├── .gitignore
├── README.md
├── f1.html
├── f2.html ... and some more html
├── images
│ └── river.jpg
>
También tengo lo siguiente en mi.gitignore
:
> cat .gitignore
*
!*.html
!images/*.*
>
Me gustaría que todos los archivos en el directorio de imágenes se incluyan en el repositorio. Pero eso no está sucediendo. Lo hice funcionar usando lo siguiente en gitignore:
*
!*.html
!images*
!*.jp*g
¿Que está sucediendo aquí? ¿Hay alguna manera infalible de probar gitignore? Revisé eldocumentación. Aquí está el punto que no entiende (esto está debajoformato de patrón título):
De lo contrario, Git trata el patrón como un globo de shell adecuado para el consumo de fnmatch (3) con el indicador FNM_PATHNAME: los comodines en el patrón no coincidirán con / en el nombre de ruta. Por ejemplo, "Documentation / *. Html" coincide con "Documentation / git.html" pero no con "Documentation / ppc / ppc.html" o "tools / perf / Documentation / perf.html".