1. Einen Platzhalter für spätere Inhalte anlegen
Erstellen Sie uploads und im Editor eine leere uploads/.gitkeep. Nehmen Sie dann diese konkrete Datei in den Index auf:
git add -- uploads/.gitkeepPrüfen Sie, dass uploads/.gitkeep im Index steht. Der Name .gitkeep ist eine Konvention ohne besondere Git-Funktion. Eine README mit dem Zweck des Verzeichnisses funktioniert ebenso. Künftig hinzugefügte Dateien werden dadurch nicht automatisch ignoriert.
git ls-files -- uploads/ 2. Das Verzeichnis behalten und generierte Inhalte ignorieren
Erstellen Sie als andere Variante uploads/.gitignore mit den folgenden zwei Zeilen. * ignoriert die Inhalte; !.gitignore lässt die Regeldatei selbst zu. Für dieses Verzeichnis genügt diese Methode, ohne zusätzlich die .gitkeep-Variante anzuwenden.
Die Regeldatei selbst ist der versionierte Platzhalter. Das Verzeichnis enthält also diese Datei. Künftige Dateien bleiben ignoriert, bis Sie die Regeln ändern.
*
!.gitignore Warum bleibt eine Datei trotz ! in einem ignorierten Verzeichnis ausgeschlossen?
3. Die gewählte Methode prüfen
Für die .gitignore-Variante nehmen Sie die Regeldatei in den Index auf:
git add -- uploads/.gitignoreErstellen Sie uploads/example.bin und prüfen Sie die passende Regel:
git check-ignore -v -- uploads/example.binIm Index sollte uploads/.gitignore stehen, aber nicht example.bin. Schließt eine übergeordnete Regel uploads selbst aus, korrigieren Sie zuerst diese Regel, damit Git die darin liegende .gitignore lesen kann.
git ls-files -- uploads/ Das genaue Verhalten und weitere Einzelheiten erläutern die offiziellen Quellen: Git-Dokumentation · Dokumentation zu git add