Git és üres mappák

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:

Git és üres mappák

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:

Git és üres mappák

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:

Git és üres mappák

Vissza