Git og tomme mapper

Da det er velkendt, at Git ikke kender mapper, men kun filer, havner tomme mappestrukturer ikke i depotet. Da mange rammer og projekter absolut har brug for dem, bør de dog ende der. En almindelig praksis er at oprette såkaldte placeholder-filer (ofte kaldet .gitkeep), der implicit specificerer mappestrukturen. Disse filer kan nemt oprettes og kan om ønsket også sikre, at andre filer i mapperne ignoreres.


Først opretter vi et testlager og opretter nogle undermapper:

434e6616f335599d241482f169f68f1b

Vi har nu følgende mappestruktur:

434e6616f335599d241482f169f68f1b

En git-status -u viser os ingen ændringer som forventet:

Git og tomme mapper

Vi bruger nu find til at oprette pladsholderfilerne på alle krævede placeringer:

434e6616f335599d241482f169f68f1b

Vi har nu modtaget følgende mappe / filstruktur:

434e6616f335599d241482f169f68f1b

En git-status -u viser os nu, at alle mapper (implicit) ender i depotet:

Git og tomme mapper

Hvis vi ønsker at sikre, at mappestrukturen altid ender i depotet, men ikke nogen filer (bortset fra pladsholderfilerne), opretter vi en gitignore:

434e6616f335599d241482f169f68f1b

Vi bruger dobbeltstjernes syntaks :

434e6616f335599d241482f169f68f1b

Den første linje ignorerer rekursivt alle filer og mapper (på ethvert niveau) i mappen "foo", den anden linje ekskluderer alle mapper (på ethvert niveau) rekursivt fra denne regel, og den tredje linje ekskluderer alle .gitkeep-filer (på ethvert niveau) .

Nu opretter vi nogle testfiler:

434e6616f335599d241482f169f68f1b

En git-status -u viser os nu det ønskede resultat:

Git og tomme mapper

Tilbage