Git-Submodule auflisten

John Wachira 15 Februar 2024
  1. Was ist ein Git-Submodul
  2. Erstellen Sie ein Git-Submodul
  3. Allgemeine Git-Befehle für Submodule
  4. Untermodule in Git auflisten
Git-Submodule auflisten

In diesem Artikel werden wir Git-Submodule besprechen. Wir werden behandeln, was sie sind, den Zweck der Untermodule und den allgemeinen Arbeitsablauf.

Git-Submodule ermöglichen es uns, ein Repo als Unterverzeichnis eines anderen Repos zu führen. Einfacher ausgedrückt sind Submodule ein Verweis auf andere Repositories in bestimmten Zeiträumen.

Was ist ein Git-Submodul

Wenn die obige Erklärung die Dinge nicht geklärt hat, sollte dies der Fall sein.

Ein Git-Submodul kann mit einem Datensatz in einem Host-Repo verglichen werden, der auf einen Commit in einem anderen Repo verweist. Im Allgemeinen sind Submodule statisch und verfolgen bestimmte Commits.

Sie verfolgen keine Branches oder Refs und werden nicht aktualisiert, wenn Änderungen in das Host-Repository übertragen werden.

Git erstellt jedes Mal eine .gitmodules-Datei, wenn wir ein Submodul in unserem Repo erstellen. Die Datei enthält die Metadaten des Submoduls und die Zuordnung zu unserem Repo.

Das Erstellen mehrerer Submodule führt zu mehreren gitmodules-Dateien.

Erstellen Sie ein Git-Submodul

Die erste Frage, die wir uns stellen müssen, lautet: Wann sollten wir ein Submodul erstellen?

Hier sind einige Szenarien, in denen es am besten ist, ein Git-Submodul zu erstellen.

  1. Wenn sich ein Unterprojekt oder eine externe Komponente schnell ändert, ist es am besten, Ihren Code an ein bestimmtes Commit zu binden. Dasselbe gilt, wenn Sie anstehende Änderungen erwarten, die die API beschädigen könnten.
  2. Beim Verfolgen von Komponenten als Lieferantenabhängigkeiten. Dies geschieht normalerweise, wenn wir eine bestimmte Komponente nicht regelmäßig aktualisieren.
  3. Wenn wir zu einem bestimmten Zeitpunkt Änderungen von einem Drittanbieter integrieren möchten. Es funktioniert am besten, wenn Sie keine häufigen Updates haben.

Allgemeine Git-Befehle für Submodule

Sehen wir uns einige allgemeine Verwendungsoptionen auf unserer Befehlszeile an.

Git-Submodul hinzufügen

Wir verwenden den Befehl git add submodule, um ein neues Submodul in unserem Host-Repository zu erstellen. Hier ist der typische Arbeitsablauf beim Erstellen von Git-Submodulen.

$ git submodule add <Repo URL>

Der Befehl git submodule add erfordert einen URL-Parameter, der auf ein Repo zeigt. Git klont das Submodul und wir können den Befehl git status ausführen, um den neuen Repo-Status anzuzeigen.

Sehen wir uns ein Beispiel an. Lassen Sie uns ein Submodul zu unserem Delftscopetech-Repository hinzufügen.

git submodule add-Befehl

Wir können jetzt den Befehl git status wie unten gezeigt ausführen.

$ git status

git status-Befehl

Wie oben zu sehen, haben wir jetzt zwei neue Dateien, .gitmodules und Learn-Submodules. Wir können die Dateien hinzufügen und die Änderungen übernehmen.

git submodule init

Wir führen den Befehl git submodule init aus, um das Mapping unseres Submoduls aus der Datei .gitmodules in unsere lokale Konfigurationsdatei zu kopieren. Es kommt ins Spiel, wenn wir mehrere Submodule in unserem Repository haben.

Untermodule in Git auflisten

Der Befehl git submodule init stützt sich auf die Datei .gitmodules. Wir können eine Liste aller Submodule anzeigen, indem wir uns auf dieselbe Datei verlassen.

Zuerst müssen wir die Datei analysieren. Wir rennen:

$ git config --file .gitmodules --name-only --get-regexp path

Dann können wir laufen:

$ git config --file .gitmodules --get-regexp path | awk '{ print $2 }'

Der obige Befehl zeigt den Pfad zu den in Ihrem Repository vorhandenen Submodulen an.

John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

Verwandter Artikel - Git Submodule