Wie löschen Sie nicht nachverfolgte lokale Dateien aus Ihrem aktuellen Arbeitsbaum?
So entfernen Sie lokale (unverfolgte) Dateien aus dem aktuellen Git-Arbeitsbaum
schreibgeschützt
robert.berger
Verwenden git clean -f -d
um sicherzustellen, dass Verzeichnisse werden ebenfalls entfernt.
-
Entfernen Sie nicht wirklich etwas, zeigen Sie nur, was getan würde.
git clean -n
oder
git clean --dry-run
-
Entfernen Sie nicht verfolgte Verzeichnisse zusätzlich zu nicht verfolgten Dateien. Wenn ein nicht nachverfolgtes Verzeichnis von einem anderen Git-Repository verwaltet wird, wird es standardmäßig nicht entfernt. Verwenden Sie die
-f
Option zweimal, wenn Sie ein solches Verzeichnis wirklich entfernen möchten.git clean -fd
Sie können dann überprüfen, ob Ihre Dateien wirklich weg sind git status
.
-
Wie bereits erwähnt, gut zum Trockenlaufen
git clean -n -d
– Ms01
9. Dezember 2013 um 10:54 Uhr
-
Dasselbe ist zu tun
git clean -nd
undgit clean -fd
.– Micer
10. Juli 2017 um 9:13 Uhr
-
Verwenden
-n
oder--dry-run
von sich aus nichts getan. Gemäß @Ms01 und @Micer müssen Sie hinzufügen-d
wie ingit clean -nd
um zu zeigen, was es entfernen wird.– Johanna
28. September 2021 um 23:25 Uhr
-
@pal4life Es wurde in 1.8.4 hinzugefügt, Sie verwenden möglicherweise eine ältere Version von Git? github.com/git/git/blob/master/Documentation/RelNotes/1.8.4.txt
– Mattias Backmann
30. September 2014 um 12:37 Uhr
-
Ich mag das – ich fühle mich wohler damit, es in meinem Bash-Verlauf zu haben als jede andere Option, weil es keine große Sache ist, wenn ich versehentlich Strg-R oder Strg-P dazu drücke.
– csvoss
21. Oktober 2019 um 22:38 Uhr
-
Könnte es das sein
git clean -i
funktioniert nur, wenn von der Wurzel der Arbeitskopie aufgerufen?– Alessandro Jacobson
4. Juni 2020 um 10:43 Uhr
Lanzenträger der Feuerwehr
-
git clean -f ‘unverfolgter Dateipfad’
– Hossain Mahmood Tuhin
29. April 2021 um 9:24 Uhr
soniiic
Einfache Möglichkeit, nicht verfolgte Dateien zu entfernen
Um alle nicht verfolgten Dateien zu entfernen, ist der einfache Weg füge zuerst alle hinzu und das Repo zurücksetzen wie nachstehend
git add --all
git reset --hard HEAD
-
git clean -f ‘unverfolgter Dateipfad’
– Hossain Mahmood Tuhin
29. April 2021 um 9:24 Uhr
Michal Szajbe
Wenn das nicht verfolgte Verzeichnis ein eigenes Git-Repository ist (z. B. Submodul), müssen Sie verwenden -f
zweimal:
git clean -d -f -f
-
BTW, das steht drin Dokumentation : Git weigert sich, Verzeichnisse mit .git-Unterverzeichnissen oder -Dateien zu löschen, es sei denn, es wird ein zweites -f angegeben. Danke trotzdem!
– Maxim Suslow
24. Juli 2015 um 9:03 Uhr
Dieser interaktive Git-Spickzettel ndpsoftware.com/git-cheatsheet.html zeigt den Git-Arbeitsbereich (Google liefert mit “Arbeitsbereich” bessere Ergebnisse als mit “Arbeitskopie”).
– qneill
1. Februar 2013 um 15:43 Uhr
Hinweis: Wenn Sie nur entfernen möchten etwas nicht verfolgte Dateien, aber nicht alle von ihnen,
git clean
hat jetzt eine interaktiv Modus! Siehe meine Antwort auf diese andere Frage: git 1.8.4+– VonC
23. Juli 2013 um 6:00 Uhr
Um das Verständnis für Uneingeweihte und Git-Neulinge zu verdeutlichen – führen Sie git status aus und wenn eine Datei als nicht verfolgt angezeigt wird und Sie diese Datei nicht im Repo haben möchten, können Sie einfach zu Ihrem Dateisystem gehen und sie löschen oder verschieben . Dies wird Ihrem lokalen Repo oder Git nichts anhaben. Sie können auch verwenden
git clean
oder eine Variation der Antworten unten, einschließlich der interaktiven Version, um nur ausgewählte Dateien zu löschen, aber der interaktive Modus kann mühsam sein. Was auch immer Sie tun, stellen Sie sicher, dass Sie verstehen, wasgit clean
löschen oder verwenden--dry-run
um es Ihnen sagen zu lassen, ohne etwas zu löschen.– LightCC
2. September 2017 um 6:15 Uhr
Wenn die Dateien noch nicht verfolgt werden, könnten Sie sie nicht einfach ohne Git entfernen?
rm files-to-be-deleted
– mhatch
14. März 2018 um 20:48 Uhr
Ich würde es verstauen, falls Sie sie erneut verwenden müssen, und zum Reinigen git clean verwenden: weitere Details: git-scm.com/docs/git-clean
– Cafébabe
20. Juni 2018 um 20:44 Uhr