2012-04-25 12 views
11

Wenn ich einen 'git status' in meinem Verzeichnis anwende, zeigt es eine Reihe von nicht aufgezeichneten Dateien, die Duplikate zu sein scheinen. Der einzige Unterschied ist, dass alle ein Präfix von ._ haben. Beispiel: Eine meiner nicht aufgezeichneten Dateien, die hinzugefügt werden müssen, wäre ... app/assets/stylesheets/categories.css und eine andere Datei würde als app/assets/stylesheets/._categories.css angezeigt.Was sind all diese versteckten ('._' Präfix) Dateien, die in meinem Git Repo sind?

Weiß jemand, worum es geht? Es scheint keine gute Dokumentation auf GitHub zu geben.

Antwort

11

Als mentioned here:

wenn für Datei foo Sie einen anderen ._foo haben, und Sie sind auf einem Mac, der Punkt-Unterstrich-Datei ist, wo die Datei Ressourcenzweig/Metadaten werden beibehalten.

Die .DS_Store ähnelt der thumbs.db Datei Windows XP macht und verwendet wird (in mehr Details in „DS_Store, dot underscore (._), resource forks and annoyed Windows users“ beschrieben), „benutzerdefinierte Attribute eines Ordners wie die Position der Symbole zu speichern, oder die Wahl eines Hintergrundbildes. "

Die dot-underscore (._) files sind lästige kleine buggers. Es scheint, dass, wenn Sie den Finder verwenden, um Dateien auf einen Nicht-Mac-System-Windows-Server in diesem Fall übertragen-er die Datei in zwei Teile teilt - die Daten und die Resource Forks. Wenn Sie die Datei zurück auf den Mac kopieren, führt der Finder die beiden Bits erneut zusammen. Windows kann die Ressourcenzweig nicht verwenden, also wird es nicht benötigt, und Sie können es löschen, aber es ist eine Menge Mühe, nach anderen aufzuräumen!

Siehe auch „Is there any way to prevent a Mac from creating dot underscore files?

+0

Sehr gut. Vielen Dank. Ich war nur auf der Suche nach einem Weg, um mein Repo nicht aufzugeben. – Jakcst

3

Sie haben nichts mit gitan sich zu tun; sie sind Metadaten-Dateien von OS X erstellt

4

Wenn Sie aktualisieren globale .gitignore (bei C:/Users/user/.gitignore oder wo auch immer Ihr Benutzerverzeichnis ist), können Sie diese Zeile hinzu:

._* 

Es wird diese verhindern von auftauchen, wenn Sie eine git status machen, und sie werden nicht über git add -A hinzugefügt.

Dies ist, was ich zu meinem hinzufügen Einfügen Müll in unseren repos verschiedene Betriebssysteme zu verhindern.

+0

Danke für diesen Code –

0

Mac bietet einen Befehlszeilenbefehl, der mit Befehlszeilenprogrammen verfügbar sein kann, die kostenlos aus dem App Store heruntergeladen werden können. Dies räumt ._ Dateien auf. Befehl ist $ dot_clean

Verwandte Themen