Entfernen ein Submodul in Git

Azhar Bashir Khan 16 Februar 2024
Entfernen ein Submodul in Git

Dieses Tutorial zeigt, wie man ein Submodul in Git entfernt.

Bei der Entwicklung eines Softwareprojekts verwenden wir häufig externe Frameworks und Bibliotheken, die für unser Projekt erforderlich sind. Diese Frameworks und Bibliotheken können Open Source sein und in einem Git-Repository aufbewahrt werden.

Möglicherweise möchten wir den Quellcode solcher externer Bibliotheken in unserem Projektverzeichnis in unserem Git-Repository aufbewahren. Die Submodule-Funktion von Git ermöglicht es uns, solche externen Quellen, die separate Git-Repositories sind, als Unterverzeichnisse in unserem Projekt-Git-Repository zu halten.

Wir können dann entscheiden, solche Git-Submodule zu entfernen, da diese für unser Projekt möglicherweise nicht mehr relevant sind.

Wir erklären es Ihnen jetzt anhand eines Beispiels.

Entfernen ein Submodul in Git

Bei der Arbeit an Softwareprojekten müssen wir oft auf externe Quellen der Bibliotheken zurückgreifen. Die externen Bibliotheken können von einem Drittanbieter oder einem anderen Team entwickelt werden.

Solche externen Bibliotheken können in einem separaten Git-Repository nachverfolgt werden.

Wir können die Submodul-Funktion von Git verwenden, um ein solches externes Git-Repository als Unterverzeichnis des Git-Repositorys unseres Projekts einzubinden. Somit können wir dann ein anderes Repository in unser Projekt klonen und die Commits von jedem getrennt halten.

Typischerweise können wir solche externen Bibliotheken ersetzen oder entfernen. Wir haben vielleicht das Gefühl, dass unser Projekt eine solche externe Bibliothek nicht mehr benötigt.

Daher entscheiden wir uns dann, die externe Bibliothek aus unserem Projekt-Git-Repository zu entfernen. Dazu müssen wir das Git-Submodul der externen Bibliothek entfernen.

Angenommen, wir haben ein Untermodul good-ext-lib in unserem Projekt-Git-Repository. Wir wollen nun, dass das Submodul good-ext-lib aus dem Git-Repository und dem Dateisystem entfernt wird.

Wir müssen die Git-Befehle wie folgt ausführen, um das Submodul zu entfernen.

$ git submodule deinit -f path/to/good-ext-lib

$ rm -rf .git/modules/path/to/good-ext-lib

$ git rm -f path/to/good-ext-lib

Der Befehl git submodule deninit deregistriert das Submodul good-ext-lib. Es entfernt den gesamten Abschnitt submodule.$name aus der Datei git/config. Außerdem entfernt es den Arbeitsbaum des Submoduls.

Der Befehl rm -rf mit dem Submodulpfad good-ext-lib im Ordner .git löscht das Submodulverzeichnis aus dem Verzeichnis .git/modules unseres Projekts.

Der Befehl git rm mit dem Pfad des Submoduls good-ext-lib im Projektverzeichnis entfernt die Tracking-Daten des Superprojekts (unser Projekt). Es entfernt den Eintrag gitlink. Außerdem wird der in der Datei .gitmodules vorhandene Submodulabschnitt entfernt und die Datei bereitgestellt.

Schließlich müssen wir das Entfernen des Submoduls good-ext-lib wie folgt begehen.

$ git commit -m "removed submodule good-ext-lib"

Daher haben wir nun das Submodul good-ext-lib aus dem Projektverzeichnis in Git entfernt.

Daher haben wir gezeigt, wie man ein Submodul in Git entfernt.

Für weitere Informationen, besuchen Sie bitte -

  1. git-submodule
  2. Git-submodule-Tutorial

Verwandter Artikel - Git Submodule