Git och tomma mappar

Eftersom Git inte känner till några mappar, bara filer, tomma mappstrukturer hamnar inte i arkivet. Men eftersom många ramar och projekt absolut behöver detta borde de hamna där. En vanlig praxis är att skapa så kallade platshållarfiler (ofta kallade .gitkeep), som implicit specificerar mappstrukturen. Dessa filer kan enkelt skapas och, om så önskas, också se till att andra filer i mapparna ignoreras.


Först skapar vi ett testförvar och skapar några undermappar:

434e6616f335599d241482f169f68f1b

Vi har nu följande mappstruktur:

434e6616f335599d241482f169f68f1b

Som förväntat visar en git-status oss inga förändringar:

Git och tomma mappar

Vi kommer nu att använda hitta för att skapa platshållarfilerna på alla nödvändiga platser:

434e6616f335599d241482f169f68f1b

Vi har nu fått följande mapp / filstruktur:

434e6616f335599d241482f169f68f1b

En git-status -u visar oss nu att alla mappar (implicit) hamnar i förvaret:

Git och tomma mappar

Om vi ​​nu vill se till att mappstrukturen alltid hamnar i arkivet, men inte några filer (förutom platshållarfilerna), skapar vi en gitignore:

434e6616f335599d241482f169f68f1b

Vi använder oss av Dubbelstjärnsyntax:

434e6616f335599d241482f169f68f1b

Den första raden ignorerar rekursivt alla filer och mappar (på vilken nivå som helst) i "foo" -mappen, den andra raden utesluter rekursivt alla mappar (på vilken nivå som helst) från denna regel och den tredje raden exkluderar alla .gitkeep-filer (på vilken nivå som helst) .

Låt oss nu skapa några testfiler:

434e6616f335599d241482f169f68f1b

En git-status visar nu önskat resultat:

Git och tomma mappar

Tillbaka