Git, Shopware i puste foldery

System kontroli wersji plików Git jest oszczędny, szybki i przenośny. Git zawsze obsługuje obiekty, czyli pliki. Foldery są tworzone tylko wtedy, gdy są w nich pliki, w przeciwnym razie Git nawet ich nie nagra. W niektórych projektach ma to nieprzyjemne skutki uboczne. Na przykład system sklepu Shopware opiera się na ścisłym przestrzeganiu struktury folderów, aby mógł funkcjonować.


Jeśli brakuje choćby jednego folderu (na przykład w folderze „cache” lub w „szablonach”), Shopware potwierdza usługę. Na przykład, wyprowadzany jest najnowszy plik dziennika w folderze „logs”:

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

Aby rozwiązać problem, po prostu umieść następujący plik php w folderze głównym repozytorium, w którym nadal znajdują się puste foldery, i uruchom go:

4287bb0575ce0f5ea732

Plik przechodzi rekurencyjnie przez całą strukturę folderów i umieszcza pusty plik „pusty-folder” w pustych folderach. Po wypchnięciu zmiany i pobraniu jej do repozytorium z problemami, struktura folderów jest teraz kompletna, a Shopware działa bez problemów.

Plecy