{"id":1131,"date":"2015-08-15T14:52:18","date_gmt":"2015-08-15T12:52:18","guid":{"rendered":"https:\/\/vielhuber.de\/?p=1131"},"modified":"2016-06-05T22:59:13","modified_gmt":"2016-06-05T20:59:13","slug":"git-shopware-und-leere-ordner","status":"publish","type":"post","link":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/","title":{"rendered":"Git, Shopware und leere Ordner"},"content":{"rendered":"<p>Das Dateiversionsverwaltungssystem Git\u00a0ist\u00a0schlank, schnell und portabel. Git hantiert stets mit Objekten, n\u00e4mlich Dateien. Ordner werden erst angelegt, wenn sich Dateien darin befinden, ansonsten erfasst Git diese erst gar nicht. Das hat in manchen Projekten\u00a0unsch\u00f6ne Nebeneffekte. So ist beispielsweise das Shopsystem Shopware auf die strikte Einhaltung der Ordnerstruktur angewiesen, um zu funktionieren.<\/p>\n<p><!--more--><\/p>\n<p>Fehlt auch nur ein Ordner (beispielsweise im Ordner \"cache\" oder in \"templates\"), quittiert Shopware den Dienst. In der neuesten Log-Datei im Ordner \"logs\" wird beispielsweise ausgegeben:<\/p>\n<blockquote>\n<p>Fatal error: Uncaught exception 'InvalidArgumentException' with message\u00a0'The directory \"C:\\...\\cache\\doctrine\\filecache\\\" does not exist'<\/p>\n<\/blockquote>\n<p>Um die Problematik zu l\u00f6sen, platziert man in den root-Ordner des Repositorys, in dem die leeren Ordner noch vorhanden sind, einfach folgende php-Datei und f\u00fchrt diese aus:<\/p>\n<p class=\"githubgist\" data-gist-file=\"empty-folder.php\">4287bb0575ce0f5ea732<\/p>\n<p>Die Datei geht dabei rekursiv die komplette Ordnerstruktur durch und legt in leere Ordner die leere Datei \"empty-folder\". Nachdem man nun die \u00c4nderung gepusht und auf dem problematischen Repository gepullt hat, ist die Ordnerstruktur nun komplett und Shopware funktioniert ohne Probleme.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Das Dateiversionsverwaltungssystem Git\u00a0ist\u00a0schlank, schnell und portabel. Git hantiert stets mit Objekten, n\u00e4mlich Dateien. Ordner werden erst angelegt, wenn sich Dateien darin befinden, ansonsten erfasst Git diese erst gar nicht. Das hat in manchen Projekten\u00a0unsch\u00f6ne Nebeneffekte. So ist beispielsweise das Shopsystem Shopware auf die strikte Einhaltung der Ordnerstruktur angewiesen, um zu funktionieren.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"gtbabel_prevent_lngs":"","gtbabel_alt_lng":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-1131","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-blog"},"acf":[],"yoast_head":"<title>Git, Shopware und leere Ordner &#060; Vielhuber David<\/title>\n<meta name=\"description\" content=\"Das Dateiversionsverwaltungssystem Git\u00a0ist\u00a0schlank, schnell und portabel. Git hantiert stets mit Objekten, n\u00e4mlich Dateien. Ordner werden erst ange...\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Git, Shopware und leere Ordner &#060; Vielhuber David\" \/>\n<meta property=\"og:description\" content=\"Das Dateiversionsverwaltungssystem Git\u00a0ist\u00a0schlank, schnell und portabel. Git hantiert stets mit Objekten, n\u00e4mlich Dateien. Ordner werden erst angelegt,\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/\" \/>\n<meta property=\"og:site_name\" content=\"Vielhuber David\" \/>\n<meta property=\"article:published_time\" content=\"2015-08-15T12:52:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2016-06-05T20:59:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"700\" \/>\n\t<meta property=\"og:image:height\" content=\"552\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"David\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@vielhuber\" \/>\n<meta name=\"twitter:site\" content=\"@vielhuber\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"David\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"1\u00a0Minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/git-shopware-und-leere-ordner\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/git-shopware-und-leere-ordner\\\/\"},\"author\":{\"name\":\"David\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#\\\/schema\\\/person\\\/64d4ff14713d413ea4d9b210d0c2c6ef\"},\"headline\":\"Git, Shopware und leere Ordner\",\"datePublished\":\"2015-08-15T12:52:18+00:00\",\"dateModified\":\"2016-06-05T20:59:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/git-shopware-und-leere-ordner\\\/\"},\"wordCount\":177,\"publisher\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#\\\/schema\\\/person\\\/64d4ff14713d413ea4d9b210d0c2c6ef\"},\"articleSection\":[\"Blog\"],\"inLanguage\":\"de\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/git-shopware-und-leere-ordner\\\/\",\"url\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/git-shopware-und-leere-ordner\\\/\",\"name\":\"Git, Shopware und leere Ordner &#060; Vielhuber David\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#website\"},\"datePublished\":\"2015-08-15T12:52:18+00:00\",\"dateModified\":\"2016-06-05T20:59:13+00:00\",\"description\":\"Das Dateiversionsverwaltungssystem Git\u00a0ist\u00a0schlank, schnell und portabel. Git hantiert stets mit Objekten, n\u00e4mlich Dateien. Ordner werden erst angelegt,\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/git-shopware-und-leere-ordner\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vielhuber.de\\\/blog\\\/git-shopware-und-leere-ordner\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/blog\\\/git-shopware-und-leere-ordner\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vielhuber.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Git, Shopware und leere Ordner\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#website\",\"url\":\"https:\\\/\\\/vielhuber.de\\\/\",\"name\":\"Vielhuber David\",\"description\":\"Full-Stack Developer\",\"publisher\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#\\\/schema\\\/person\\\/64d4ff14713d413ea4d9b210d0c2c6ef\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vielhuber.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/vielhuber.de\\\/#\\\/schema\\\/person\\\/64d4ff14713d413ea4d9b210d0c2c6ef\",\"name\":\"David\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/vielhuber.de\\\/wp-content\\\/uploads\\\/about.jpg\",\"url\":\"https:\\\/\\\/vielhuber.de\\\/wp-content\\\/uploads\\\/about.jpg\",\"contentUrl\":\"https:\\\/\\\/vielhuber.de\\\/wp-content\\\/uploads\\\/about.jpg\",\"width\":700,\"height\":552,\"caption\":\"David\"},\"logo\":{\"@id\":\"https:\\\/\\\/vielhuber.de\\\/wp-content\\\/uploads\\\/about.jpg\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/vielhuber\"]}]}<\/script>","yoast_head_json":{"title":"Git, Shopware und leere Ordner &#060; Vielhuber David","description":"Das Dateiversionsverwaltungssystem Git\u00a0ist\u00a0schlank, schnell und portabel. Git hantiert stets mit Objekten, n\u00e4mlich Dateien. Ordner werden erst ange...","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/","og_locale":"de_DE","og_type":"article","og_title":"Git, Shopware und leere Ordner &#060; Vielhuber David","og_description":"Das Dateiversionsverwaltungssystem Git\u00a0ist\u00a0schlank, schnell und portabel. Git hantiert stets mit Objekten, n\u00e4mlich Dateien. Ordner werden erst angelegt,","og_url":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/","og_site_name":"Vielhuber David","article_published_time":"2015-08-15T12:52:18+00:00","article_modified_time":"2016-06-05T20:59:13+00:00","og_image":[{"width":700,"height":552,"url":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg","type":"image\/jpeg"}],"author":"David","twitter_card":"summary_large_image","twitter_creator":"@vielhuber","twitter_site":"@vielhuber","twitter_misc":{"Verfasst von":"David","Gesch\u00e4tzte Lesezeit":"1\u00a0Minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/#article","isPartOf":{"@id":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/"},"author":{"name":"David","@id":"https:\/\/vielhuber.de\/#\/schema\/person\/64d4ff14713d413ea4d9b210d0c2c6ef"},"headline":"Git, Shopware und leere Ordner","datePublished":"2015-08-15T12:52:18+00:00","dateModified":"2016-06-05T20:59:13+00:00","mainEntityOfPage":{"@id":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/"},"wordCount":177,"publisher":{"@id":"https:\/\/vielhuber.de\/#\/schema\/person\/64d4ff14713d413ea4d9b210d0c2c6ef"},"articleSection":["Blog"],"inLanguage":"de"},{"@type":"WebPage","@id":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/","url":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/","name":"Git, Shopware und leere Ordner &#060; Vielhuber David","isPartOf":{"@id":"https:\/\/vielhuber.de\/#website"},"datePublished":"2015-08-15T12:52:18+00:00","dateModified":"2016-06-05T20:59:13+00:00","description":"Das Dateiversionsverwaltungssystem Git\u00a0ist\u00a0schlank, schnell und portabel. Git hantiert stets mit Objekten, n\u00e4mlich Dateien. Ordner werden erst angelegt,","breadcrumb":{"@id":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/vielhuber.de\/blog\/git-shopware-und-leere-ordner\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vielhuber.de\/"},{"@type":"ListItem","position":2,"name":"Git, Shopware und leere Ordner"}]},{"@type":"WebSite","@id":"https:\/\/vielhuber.de\/#website","url":"https:\/\/vielhuber.de\/","name":"Vielhuber David","description":"Full-Stack Developer","publisher":{"@id":"https:\/\/vielhuber.de\/#\/schema\/person\/64d4ff14713d413ea4d9b210d0c2c6ef"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vielhuber.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":["Person","Organization"],"@id":"https:\/\/vielhuber.de\/#\/schema\/person\/64d4ff14713d413ea4d9b210d0c2c6ef","name":"David","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg","url":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg","contentUrl":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg","width":700,"height":552,"caption":"David"},"logo":{"@id":"https:\/\/vielhuber.de\/wp-content\/uploads\/about.jpg"},"sameAs":["https:\/\/x.com\/vielhuber"]}]}},"_links":{"self":[{"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/posts\/1131","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/comments?post=1131"}],"version-history":[{"count":1,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/posts\/1131\/revisions"}],"predecessor-version":[{"id":1288,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/posts\/1131\/revisions\/1288"}],"wp:attachment":[{"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/media?parent=1131"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/categories?post=1131"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vielhuber.de\/km\/wp-json\/wp\/v2\/tags?post=1131"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}