Wie füge ich in SourceTree ein Submodule hinzu?
- Einführung in Submodule und SourceTree
- Was bedeutet Submodule in Git?
- Submodule mit SourceTree hinzufügen – Der Ablauf
- Verwalten des Submodules in SourceTree
- Fazit
Einführung in Submodule und SourceTree
Submodule sind eine wichtige Funktion von Git, mit der man ein separates Git-Repository in ein anderes Git-Hauptprojekt einbinden kann. Dies ist hilfreich, wenn man beispielsweise Bibliotheken oder externe Projekte als Teil des eigenen Codes verwalten möchte. SourceTree ist ein grafisches Git-Tool von Atlassian, das den Umgang mit Repositories erleichtert, gerade für Nutzer, die nicht ausschließlich mit der Kommandozeile arbeiten.
Was bedeutet Submodule in Git?
Ein Submodule ist im Grunde ein Verweis auf ein anderes Git-Repository bei einem bestimmten Commit-Stand. Dadurch bleibt die Versionskontrolle des Submodules unabhängig, während es gleichzeitig Teil des Hauptprojekts ist. Dies ermöglicht es, externe Projekte oder gemeinsam genutzte Module in einem Projekt einzubinden, ohne den Quellcode direkt zu kopieren.
Submodule mit SourceTree hinzufügen – Der Ablauf
Wenn man ein Submodule in SourceTree hinzufügen möchte, ist der Vorgang etwas weniger offensichtlich als in der Git-Befehlszeile. SourceTree bietet keine direkte Schaltfläche oder ein Menü für das Hinzufügen von Submodulen, daher ist ein gewisses Verständnis nötig.
Zunächst sollte man das Hauptrepository in SourceTree geöffnet haben. Um ein Submodule hinzuzufügen, ist es empfehlenswert, den Git-Befehl über die Kommandozeile auszuführen. Der übliche Befehl lautet:
Alternativ kann man innerhalb von SourceTree unter dem Reiter Terminal den Befehl direkt ausführen. Danach erkennt SourceTree das neu hinzugefügte Submodule und zeigt es als Teil des Projekts an.
Verwalten des Submodules in SourceTree
Nachdem das Submodule hinzugefügt wurde, erscheint im Arbeitsverzeichnis eine neue Verzeichnisebene für das Submodule. SourceTree zeigt diese als separates Repository an, so dass man Änderungen darin separat verwalten kann. Man kann nun wie gewohnt in SourceTree Änderungen im Submodule committen, pushen oder pullen.
Wichtig ist, nach dem Hinzufügen eines Submodules im Hauptprojekt die .gitmodules-Datei und die Submodule-Verzeichnisse zu committen, damit andere Teammitglieder die Submodule ebenfalls nutzen können.
Fazit
Das Hinzufügen eines Submodules direkt im SourceTree-GUI ist nicht vollständig automatisiert und erfordert den Einsatz von Git-Befehlen, die über die in SourceTree integrierte Terminalfunktion ausgeführt werden können. Durch die Kombination der simplen Git-Kommandos mit der graphischen Darstellung von SourceTree lässt sich das Arbeiten mit Submodules elegant und übersichtlich gestalten. Damit bleibt die Versionskontrolle flexibel und modular, was gerade in komplexeren Projekten mit mehreren Abhängigkeiten von großem Vorteil ist.
