1790 Stimmen

Wie kann ich .DS_Store-Dateien aus einem Git-Repository entfernen?

Wie kann ich diese lästigen Mac OS X .DS_Store Dateien aus einem Git-Repository?

53voto

Reggie Pinkham Punkte 10526

Wenn Sie nicht in der Lage sind, die Dateien zu entfernen, weil sie Änderungen haben, verwenden Sie staged:

git rm --cached -f *.DS_Store

50voto

Kasem777 Punkte 401

Der beste Weg, um diese Datei für immer loszuwerden und sich nie wieder Gedanken darüber machen zu müssen, ist

eine globale .gitignore-Datei erstellen:

echo .DS_Store >> ~/.gitignore_global

Und teilen Sie git mit, dass Sie diese Datei für alle Ihre Repositories verwenden wollen:

git config --global core.excludesfile ~/.gitignore_global Und das war's! .DS_Store ist aus dem Weg geräumt.

31voto

Joshua Dance Punkte 7132

Die am besten bewertete Antwort ist großartig, aber um Anfängern wie mir zu helfen, wird hier beschrieben, wie man die .gitignore-Datei erstellt, sie bearbeitet, speichert, die Dateien entfernt, die man möglicherweise bereits zu Git hinzugefügt hat, und die Datei dann auf Github hochlädt.

Erstellen Sie die Datei .gitignore

Um eine .gitignore-Datei zu erstellen, können Sie einfach touch die Datei, die eine leere Datei mit dem angegebenen Namen erstellt. Wir wollen die Datei mit dem Namen .gitignore erstellen, damit wir den Befehl verwenden können:

touch .gitignore

Ignorieren Sie die Dateien

Nun müssen Sie die Zeile, die Git anweist, die DS Store-Dateien zu ignorieren, zu Ihrer .gitignore hinzufügen. Dazu können Sie den nano-Editor verwenden.

nano .gitignore

Nano ist gut, weil es eine Anleitung enthält, wie man da wieder rauskommt. ( Ctrl - O zu speichern, Ctrl - X zum Ausgang)

Kopieren und Einfügen einiger der Ideen aus diesem Artikel Github gist die einige übliche zu ignorierende Dateien auflistet. Die wichtigsten, um diese Frage zu beantworten, sind:

# OS generated files #
######################
.DS_Store
.DS_Store?

Die # sind Kommentare, die Ihnen helfen, Ihre Datei zu organisieren, wenn sie wächst.

Diese Github-Artikel enthält auch einige allgemeine Ideen und Leitlinien.

Entfernen Sie die bereits zu git hinzugefügten Dateien

Schließlich müssen Sie die DS Store-Dateien aus Ihrem Verzeichnis entfernen.

Verwenden Sie diesen großartigen Befehl aus der oben genannten Antwort. Damit werden alle Ordner in Ihrem Verzeichnis durchsucht und die Dateien aus Git entfernt.

find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch

.gitignore auf Github hochladen

Als letzten Schritt müssen Sie Ihre .gitignore-Datei tatsächlich übertragen.

git status

git add .gitignore

git commit -m '.DS_Store banished!'

26voto

Karthick Vadivel Punkte 401

Öffnen Sie das Terminal und geben Sie "cd <Projektpfad >" ein.

  1. Entfernen Sie vorhandene Dateien: find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch

  2. nano .gitignore

  3. Dies hinzufügen .DS_Store

  4. ctrl + x" eingeben

  5. Tippen Sie "y".

  6. Enter zum Speichern der Datei

  7. git add .gitignore

  8. git commit -m '.DS_Store removed.'

19voto

Sunny Punkte 751

Verwenden Sie diesen Befehl, um die vorhandenen Dateien zu entfernen:

find . -name '*.DS_Store' -type f -delete

Dann fügen Sie .DS_Store à .gitignore

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X