Mivel a Git nem ismer mappákat, csak fájlok, az üres mappaszerkezetek nem kerülnek a tárba. Mivel azonban sok keretnek és projektnek erre feltétlenül szüksége van, oda kellene kerülnie. Általános gyakorlat az úgynevezett helyőrző fájlok létrehozása (gyakran .gitkeep néven), amelyek implicit módon meghatározzák a mappa struktúráját. Ezeket a fájlokat könnyen létrehozhatjuk, és ha szükséges, gondoskodjunk arról is, hogy a mappákban lévő más fájlokat figyelmen kívül hagyjuk.
Először létrehozunk egy teszttárat és létrehozunk néhány almappát:
434e6616f335599d241482f169f68f1b
Most a következő mappaszerkezettel rendelkezünk:
434e6616f335599d241482f169f68f1b
A várakozásoknak megfelelően a git állapot -u nem mutat változásokat:
Most a find segítségével fogjuk létrehozni a helyőrző fájlokat az összes szükséges helyen:
434e6616f335599d241482f169f68f1b
Most megkaptuk a következő mappa / fájl struktúrát:
434e6616f335599d241482f169f68f1b
A git status -u most megmutatja, hogy az összes mappa (implicit módon) a lerakatba kerül:
Ha most azt akarjuk biztosítani, hogy a mappastruktúra mindig az adattárba kerüljön, de egyetlen fájl sem (a helyőrző fájlokon kívül), akkor létrehozunk egy gitignore-t:
434e6616f335599d241482f169f68f1b
Használjuk a Dupla csillag szintaxis:
434e6616f335599d241482f169f68f1b
Az első sor rekurzívan figyelmen kívül hagyja az összes fájlt és mappát (bármilyen szinten) a "foo" mappában, a második sor rekurzívan kizár minden mappát ebből a szabályból (bármely szinten), a harmadik sor pedig az összes .gitkeep fájlt kizárja (bármilyen szinten) .
Most hozzunk létre néhány tesztfájlt:
434e6616f335599d241482f169f68f1b
A git állapot -u most megmutatja a kívánt eredményt: