Ĉar Git ne konas dosierujojn, nur dosierojn, malplenajn dosierajn strukturojn ne finas en la deponejo. Tamen, ĉar multaj kadroj kaj projektoj absolute bezonas ĉi tion, ili devas fini tie. Ofta praktiko estas krei tiel nomatajn lokokupajn dosierojn (ofte nomatajn .gitkeep), kiuj implicite specifas la dosierujan strukturon. Ĉi tiuj dosieroj povas esti kreitaj facile kaj, se ili volas, ankaŭ certigas, ke aliaj dosieroj en la dosierujoj estas ignoritaj.
Unue ni kreas testan deponejon kaj kreas iujn subdosierujojn:
434e6616f335599d241482f169f68f1b
Ni nun havas la sekvan dosierujon:
434e6616f335599d241482f169f68f1b
Kiel atendite, git status -u montras al ni neniujn ŝanĝojn:
Ni nun uzos find por krei la lokokupajn dosierojn ĉe ĉiuj bezonataj lokoj:
434e6616f335599d241482f169f68f1b
Ni nun ricevis la jenan dosierujon / dosierstrukturon:
434e6616f335599d241482f169f68f1b
Git-statuso -u nun montras al ni, ke ĉiuj dosierujoj (implicite) finiĝas en la deponejo:
Se ni nun volas certigi, ke la dosierujo-strukturo ĉiam finiĝas en la deponejo, sed ne iuj dosieroj (krom la lokokupaj dosieroj), ni kreas gitignore:
434e6616f335599d241482f169f68f1b
Ni uzas la Duobla stela sintakso:
434e6616f335599d241482f169f68f1b
La unua linio rekursie ignoras ĉiujn dosierojn kaj dosierujojn (je iu ajn nivelo) en la dosierujo "foo", la dua linio rekursive ekskludas ĉiujn dosierujojn (je iu ajn nivelo) de ĉi tiu regulo kaj la tria linio ekskludas ĉiujn .gitkeep-dosierojn (je iu ajn nivelo) .
Nun ni kreu kelkajn testdosierojn:
434e6616f335599d241482f169f68f1b
Git-statuso nun montras al ni la deziratan rezulton: