Warum gibt es keine „Pfadspezifikation“, wenn ich versuche, einen Ordner in Git zu entfernen?

Warum gibt es keine „Pfadspezifikation“, wenn ich versuche, einen Ordner in Git zu entfernen?

Ich versuche, einen Ordner aus meinem Git-Repository zu entfernen mit

git rm folderToRemove

aber Git gibt diesen Fehler aus, wenn ich das versuche.

fatal: pathspec 'siteFiles/applicationFiles/templates/folderToRemove' 
did not match any files

Mein aktuelles Verzeichnis ist „templates“. Ich finde diesen Fehler merkwürdig, da ich cdin den Ordner „folderToRemove“ komme, also existiert er eindeutig. Was bedeutet dieser Fehler?

Antwort1

Git versioniert keine Verzeichnisse, sondern nur „Inhalte“ (Verzeichnisinhalte oder Dateien)

hat keine Übereinstimmung mit Dateien gefunden

Das bedeutet, dass es keine Datei zum Entfernen gibt folderToRemove, wie ich in "Dateien können nicht rekursiv aus Git entfernt werden". Sie können jetzt das Verzeichnis selbst
entfernen (Windows deloder Unix ).rm

Wie in "Löschen leerer Verzeichnisse in Git", können Sie auch Folgendes ausführen:

git clean -fd

Jedoch:

Warnung: Der Befehl clean entfernt alle Dateien in der aktuellen Arbeitskopie, die nicht von Git verfolgt werden. Auf diese Weise können Sie Ihre Arbeit verlieren, wenn Sie Git keine neuen Dateien hinzugefügt haben. Führen Sie den Befehl immer git addvor aus git clean.

Führen Sie lieber zuerst einen aus:

git clean -d -x -n

Wie in "Wie lösche ich mein lokales Arbeitsverzeichnis in Git?".

verwandte Informationen