Git dosya sürüm belirleme sistemi zayıf, hızlı ve taşınabilirdir. Git her zaman nesneleri, yani dosyaları işler. Klasörler yalnızca içlerinde dosyalar varsa oluşturulur, aksi takdirde Git onları kaydetmez bile. Bunun bazı projelerde hoş olmayan yan etkileri vardır. Örneğin, Shopware mağaza sistemi, çalışması için klasör yapısına sıkı sıkıya bağlı kalmaya dayanır.
Bir klasör bile eksikse (örneğin "önbellek" klasöründe veya "şablonlarda"), Shopware hizmeti kabul eder. Örneğin, "günlükler" klasöründeki en son günlük dosyası çıktıdır:
Fatal error: Uncaught exception 'InvalidArgumentException' with message 'The directory "C:\...\cache\doctrine\filecache\" does not exist'
Sorunu çözmek için, aşağıdaki php dosyasını boş klasörlerin hala mevcut olduğu deponun kök klasörüne yerleştirin ve çalıştırın:
4287bb0575ce0f5ea732
Dosya, tüm klasör yapısını özyinelemeli olarak geçer ve boş "boş klasör" dosyasını boş klasörlere yerleştirir. Değişikliği yükledikten ve sorunlu depoya çektikten sonra, klasör yapısı artık tamamlanmıştır ve Shopware sorunsuz çalışır.