None

Git: Dateien nur aus Repository löschen

Unter Git kann es die Situation geben, dass eine Datei oder ein Verzeichnis nur aus dem Repository gelöscht werden soll, z.B. wenn sie/es in die .gitignore aufgenommen wurde.

Das klassische git rm würde auch die Datei aus dem Working Tree bzw. lokalen Dateisystem löschen. Abhilfe schafft die Option --cached.

Soll nun z.B. eine Datei namens file_to_delete im Repository gelöscht werden, wird dies mit dem Kommando

git rm --cached file_to_delete

erledigt. Soll das gleiche mit einem Verzeichnis passieren, hilft das Kommando

git rm --cached -r dir_to_delete/

Commit und Push natürlich danach nicht vergessen.

git commit -m "Deleted file"
git push

 

Pro-Tipp: soll aufgeräumt und alle Files, die mit der .gitignore matchen, nur im Repository gelöscht werden, kann folgendes Kommando genutzt werden

git rm --cached `git ls-files -i -X .gitignore`

 

Quelle: 1, 2, Git logo: Jason Long (CC-BY)

Keine Kommentare

Kommentar verfassen