8129 Stimmen

So entfernen Sie lokale (nicht verfolgte) Dateien aus dem aktuellen Git-Arbeitsbaum

Wie löschen Sie nicht verfolgte lokale Dateien aus Ihrem aktuellen Arbeitsbaum?

104 Stimmen

Dieser interaktive Git-Spickzettel ndpsoftware.com/git-cheatsheet.html zeigt den Git-Arbeitsbereich (Google liefert mit "Arbeitsbereich" bessere Ergebnisse als mit "Arbeitskopie").

38 Stimmen

Hinweis: Wenn Sie nur die algunos 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+

0 Stimmen

Bevor Sie eine neue Antwort schreiben, bedenken Sie, dass es bereits mehr als 25 Antworten auf diese Frage gibt. Vergewissern Sie sich, dass Ihre Antwort einen Beitrag leistet, der nicht in den vorhandenen Antworten enthalten ist

103voto

Vijay C Punkte 4589

Falls erforderlich, um nicht verfolgte Dateien aus einem bestimmten Unterverzeichnis zu entfernen,

git clean -f {dir_path}

Und eine kombinierte Möglichkeit, nicht verfolgte Verzeichnisse/Dateien und ignorierte Dateien zu löschen.

git clean -fxd {dir_path}

Danach haben Sie geänderte Dateien nur noch in git status .

97voto

Shital Shah Punkte 54846

Entfernen Sie alle zusätzlichen Ordner und Dateien in diesem Repo + Submodulen

Damit haben Sie den gleichen Zustand wie ein frischer Klon.

git clean -ffdx

Entfernen Sie alle zusätzlichen Ordner und Dateien in diesem Repository, aber nicht seine Untermodule

git clean -fdx

Entfernen von zusätzlichen Ordnern, aber nicht von Dateien (z. B. Build- oder Logs-Ordner)

git clean -fd

Entfernen von zusätzlichen Ordnern und ignorierten Dateien (aber nicht von neu hinzugefügten Dateien)

Wenn die Datei nicht ignoriert und noch nicht eingecheckt wurde, bleibt sie erhalten. Beachten Sie das große X.

git clean -fdX

Neuer interaktiver Modus

git clean

1 Stimmen

Diese Antwort funktioniert hervorragend! Sie können immer hinzufügen --dry-run Option zur Auflistung der zu entfernenden Dateien/Ordner vor der Durchführung der Aktion

70voto

Alireza Punkte 92209

GUT, Löschen von unerwünschte, nicht verfolgte Dateien und Ordner sind einfach mit git in der Befehlszeile, machen Sie es einfach so:

git clean -fd

Doppelte Kontrolle bevor Sie es tun, da es die Dateien und Ordner löscht, ohne einen Verlauf zu erstellen...

Auch in diesem Fall, -f steht für Kraft und -d steht für Verzeichnis...

Wenn Sie also nur Dateien löschen wollen, können Sie -f nur:

git clean -f

Wenn Sie möchten, dass löschen (Verzeichnisse) und Dateien, können Sie nur nicht verfolgte Verzeichnisse und Dateien wie folgt löschen:

git clean -fd

Sie können auch Folgendes verwenden -x um die Dateien einzuschließen, die von Git ignoriert werden. Dies wäre hilfreich, wenn Sie alles löschen möchten.

Und das Hinzufügen -i bewirkt, dass Git Sie um Erlaubnis bittet, Dateien nacheinander zu löschen.

Wenn Sie sich nicht sicher sind und die Dinge erst überprüfen wollen, fügen Sie -n Flagge.

Verwenden Sie -q wenn Sie nach erfolgreicher Löschung keinen Bericht sehen wollen.

Ich habe auch das Bild unten erstellt, um es einprägsamer zu machen, vor allem habe ich gesehen, dass viele Leute verwechseln -f für die Reinigungsmappe manchmal oder mischen Sie sie irgendwie auf!

deleting unwanted untracked files and folder

68voto

Pooja Punkte 1194

git clean -fd entfernt das Verzeichnis

git clean -fX Entfernt ignorierte Dateien

git clean -fx entfernt ignorierte und nicht-ignorierte Dateien

können alle oben genannten Optionen in Kombination verwendet werden als

git clean -fdXx

siehe Git-Handbuch für weitere Hilfe

11 Stimmen

Der Befehl git clean -fdXx erzeugt die Fehlermeldung "fatal: -x und -X können nicht zusammen verwendet werden" (unter Verwendung von git-2.8). Für Ihren letzten Satz in Ihrer Antwort geben Sie bitte einen Link zum Git-Handbuch an. Vielen Dank

43voto

Chhabilal Punkte 1076

Ein besserer Weg ist die Verwendung von: git clean

git clean -d -x -f

Dadurch werden nicht verfolgte Dateien, einschließlich Verzeichnisse, entfernt (-d) und Dateien, die von git (-x) .

Ersetzen Sie auch die -f Argument mit -n zur Durchführung einer dry-run o -i für den interaktiven Modus und es wird Ihnen mitgeteilt, was entfernt wird.

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