Entfernen von Dateien aus einem Repository in Git

Azhar Bashir Khan 25 Dezember 2021
Entfernen von Dateien aus einem Repository in Git

Dieses Tutorial zeigt, wie Sie Dateien aus einem Git-Repository entfernen.

Git ermöglicht eine kollaborative Entwicklungsumgebung. Daher werden viele Dateien von einem Entwicklerteam in ein Git-Repository übertragen.

Oft stoßen wir auf einige Dateien, die nicht mehr benötigt werden oder redundant sind. In solchen Fällen halten wir es für angebracht, solche Dateien oder Ordner zu löschen, die bereits in das Repository übernommen wurden.

Wir werden dies nun an einem Beispiel veranschaulichen.

Verwenden von git rm zum Entfernen von Dateien und Ordnern im Git-Repository

Angenommen, wir haben einen Ordner namens folder1 im Git-Repository. Bedenken Sie auch, dass dieser Ordner zwei Dateien enthält, file1 und file2.

$ ls folder1/
file1  file2

Um eine Datei im Git-Repository zu löschen, müssen wir wie folgt vorgehen.

$ git rm <filename>

$ git commit -m "commit message"

$ git push origin branch_name

Der erste Befehl löscht eine Datei aus dem Git-Repository und dem Dateisystem. Die nachfolgenden Befehle werden verwendet, um die Änderungen zu committieren und die Änderung (d. h. das Löschen der Datei) in das Remote-Repository zu pushen.

Um file1 zu löschen, gehen wir in unserem Beispiel also wie folgt vor.

$ cd folder1

$  git rm file1
rm 'folder1/file1'

Wir sind in folder1 umgezogen und file1 aus dem Repository und dem Dateisystem gelöscht.

Den Status der Löschung können wir wie folgt überprüfen.

$ git status
On branch main
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

	deleted:    file1

Nun werden wir diese Löschung wie folgt vornehmen.

$ git commit -m "deleted file"
[main 27ec53b] deleted file
 1 file changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 folder1/file1
 
$ git push origin main

Manchmal möchten wir die Datei möglicherweise nur aus dem Repository und nicht aus dem Dateisystem löschen. Möglicherweise möchten wir diese Datei für andere Zwecke verwenden.

Um nur Dateien aus dem Repository und nicht aus dem Dateisystem zu löschen, müssen wir Folgendes tun.

$ git rm --cached file2

$ git commit -m "Removed file2 from repository only"

$ git push origin main

Wenn wir den Befehl git rm mit der Option --cached ausführen, werden die Dateien aus dem Repository entfernt, aber nicht aus dem Arbeitsbaum (d. h. dem Dateisystem).

Manchmal müssen wir möglicherweise den gesamten Ordner löschen.

Dazu müssen wir dem Befehl git rm wie folgt die Option -r hinzufügen.

$ git rm -r folder1
rm 'folder1/file2'

$ git commit -m "removed folder1"
[main dabfe02] removed folder1
 1 file changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 folder1/file2
 
$ git push origin main

In unserem Beispiel haben wir also den Ordner viz gelöscht. folder1 zusammen mit seinem Inhalt.

Weitere Informationen zu git rm finden Sie auf der folgenden Site - git rm.

Verwandter Artikel - Git Repository