lab Was sind die Unterschiede zwischen.gitignore und.gitkeep?




gitignore gitkeep (3)

.gitkeep ist nicht dokumentiert, da es kein Feature von Git ist.

Git kann kein vollständig leeres Verzeichnis hinzufügen . Personen, die leere Verzeichnisse in Git .gitkeep möchten, haben die Konvention erstellt, Dateien namens .gitkeep in diese Verzeichnisse zu stellen. Die Datei könnte irgendwas heißen; Git weist diesem Namen keine besondere Bedeutung zu.

Es gibt eine konkurrierende Konvention zum Hinzufügen einer .gitignore Datei zu den leeren Verzeichnissen, um sie zu verfolgen, aber einige Leute sehen dies als verwirrend an, da das Ziel ist, die leeren Verzeichnisse zu behalten, nicht zu ignorieren; .gitignore wird auch verwendet, um Dateien .gitignore , die von Git ignoriert werden sollten, wenn nach nicht verdeckten Dateien gesucht wird.

Was sind die Unterschiede zwischen .gitignore und .gitkeep ? Sind sie mit einem anderen Namen identisch oder haben beide eine andere Funktion? Ich bin nicht in der Lage, viel Dokumentation über .gitkeep zu finden.


.gitkeep ist nur ein Platzhalter. Eine Dummy-Datei, also wird git das Verzeichnis nicht vergessen, da git nur Dateien verfolgt.

Wenn Sie ein leeres .gitignore wünschen und sicherstellen möchten, dass es für git "sauber" bleibt, erstellen Sie ein .gitignore das die folgenden Zeilen enthält:

# .gitignore sample 
###################

# ignore all files in this dir...
*

# ... except for this one.
!.gitignore

Wenn Sie möchten, dass nur ein Dateityp für git sichtbar ist, sehen Sie hier ein Beispiel, wie Sie alles außer .gitignore und allen .txt Dateien herausfiltern können:

# .gitignore to keep just .txt files
###################################

# filter everything...
*

# ... except the .gitignore...
!.gitignore

# ... and all text files.
!*.txt

('#' zeigt Kommentare an.)


.gitignore

ist eine Textdatei, die eine Liste von Dateien in Ihrem Verzeichnis enthält, die git ignorieren oder nicht im Repository hinzufügen / aktualisieren wird.

.gitkeep

Da Git keine leeren Verzeichnisse zu einem Repo hinzufügt oder hinzufügt, ist .gitkeep eine Art Hack (ich glaube nicht, dass es offiziell als Teil von git bezeichnet wird), um leere Verzeichnisse im Repo zu behalten.

machen Sie einfach einen touch /path/to/emptydirectory/.gitkeep , um die Datei hinzuzufügen, und git wird nun in der Lage sein, dieses Verzeichnis im Repository zu verwalten.





gitignore