Git, Shopware y carpetas vacías

El sistema de control de versiones de archivos Git es sencillo, rápido y portátil. Git siempre maneja objetos, es decir, archivos. Las carpetas solo se crean si hay archivos en ellas, de lo contrario, Git ni siquiera las grabará. Esto tiene efectos secundarios desagradables en algunos proyectos. Por ejemplo, el sistema de la tienda Shopware se basa en un estricto cumplimiento de la estructura de carpetas para funcionar.


Si incluso falta una carpeta (por ejemplo, en la carpeta "caché" o en "plantillas"), Shopware reconoce el servicio. Por ejemplo, se genera el archivo de registro más reciente de la carpeta "registros":

Fatal error: Uncaught exception 'InvalidArgumentException' with message 'The directory "C:\...\cache\doctrine\filecache\" does not exist'

Para resolver el problema, simplemente coloque el siguiente archivo php en la carpeta raíz del repositorio en el que aún están presentes las carpetas vacías y ejecútelo:

4287bb0575ce0f5ea732

El archivo recorre toda la estructura de carpetas de forma recursiva y coloca el archivo vacío "carpeta vacía" en carpetas vacías. Una vez que haya introducido el cambio y lo haya colocado en el repositorio problemático, la estructura de carpetas ahora está completa y Shopware funciona sin problemas.

Atrás