git ready

Lerne Git Commit für Commit
von Nick Quaranto, Übersetzung von Nico Gulden

Untracked Dateien aufräumen

eingetragen am 16 Jan 2009

Unser erster eingereichter Tip kommt von Dav Glass. Er führt näher aus, wie das Repository schön sauber gehalten werden kann. Hast du einen Tip, den du teilen möchtest? Reiche einen Tip ein!

Dateien und Verzeichnisse können sich in deinem Arbeitsverzeichnis anhäufen, die von Merges übrig blieben, erstellt oder fälschlicherweise dort abgelegt wurden. Was auch immer der Fall ist, du musst sie nicht in deine .gitignore-Datei eintragen. Du kannst sie einfach entfernen.

git clean -n -d <path>

macht einen ‘Trockenlauf’ des Befehls und zeigt dir, welche Dateien und Verzeichnisse entfernt werden. Auf gitready ausgeführt, kommt folgende Ausgabe:

Would remove _posts/2009-01-16-cleaning-up-untracked-files.textile

Es wäre definitiv schlecht, wenn die Datei entfernt werden würde. Ich habe den Beitrag noch nicht zur staging Area hinzugefügt, so dass sie als “untracked” gilt. Wenn du nur Dateien und keine leeren Verzeichnisse aufräumen möchtest, lasse die -d Option weg. Sobald du sicher bist, dass du all diese Dateien entfernen möchtest, so entfernt ein

git clean -d <path>

die Dateien. Wenn du <path> wegläßt, wird Git den Befehl im aktuellen Verzeichnis ausführen. Vielleicht musst du noch die -f Option einfügen, abhängig von Rechten und anderen Situationen, die aufkommen können.

Aufräumen hat noch ein paar andere nützliche Optionen: Wenn du normal aufräumen möchtest und alle Dateien löschen willst, die Git gewöhnlich ignoriert, so wird dir die -x Option dabei behilflich sein. Wenn du die ignorierten Dateien einfach wegwerfen möchtest, so reicht die -X Option.

Für einen Großputz hilft:

$ git clean -n -d -x
Would remove .DS_Store
Would remove _posts/.2009-01-16-cleaning-up-untracked-files.textile.swp
Would remove _posts/2009-01-16-cleaning-up-untracked-files.textile
Would remove _site/
Would remove images/.DS_Store
Would remove images/_site/

Der Befehl räumt Dateien und Verzeichnisse auf, die nicht mehr nötig sind und Dateien, die in der .gitignore Datei des Projekts genannt sind. Wie immer, sei vorsichtig bei der Verwendung von git clean und prüfe, was du wirklich löschst.

Wie immer, wenn du andere ähnliche Tricks mit git clean kennst, teile sie uns in den Kommentaren mit!.