Sie können dies mit Submodulen in Git tun. Führen Sie in Ihrem Repository Folgendes aus:
git submodule add path_to_repo path_where_you_want_it
Wenn das Repository der Bibliothek eine URL von hätte git://github.com/example/some_lib.git
und Sie diese lib/some_lib
in Ihrem Projekt haben möchten, geben Sie Folgendes ein:
git submodule add git://github.com/example/some_lib.git lib/some_lib
Beachten Sie, dass dies über das Verzeichnis der obersten Ebene in Ihrem Repository erfolgen muss. Gehen Sie also nicht cd
in das Verzeichnis, in dem Sie es zuerst ablegen.
Nachdem Sie ein Submodul hinzugefügt haben oder wenn jemand Ihr Repository erneut auscheckt, müssen Sie Folgendes tun:
git submodule init
git submodule update
Und dann werden alle von Ihnen hinzugefügten Submodule mit derselben Revision ausgecheckt, die Sie haben.
Wenn Sie auf eine neuere Version einer der Bibliotheken aktualisieren möchten, wechseln Sie cd
in das Submodul und ziehen Sie:
cd lib/some_lib
git pull
Wenn Sie dann eine git status
ausführen, sollte dies lib/somelib
im geänderten Abschnitt aufgeführt sein. Fügen Sie diese Datei hinzu, schreiben Sie sie fest und Sie sind auf dem neuesten Stand. Wenn ein Mitarbeiter dieses Commit in sein Repository zieht, wird es lib/somelib
als geändert angesehen, bis es git submodule update
erneut ausgeführt wird.
git submodule update --remote
Ich empfehle jedoch, für komplexere Projekte mehr Flags zu verwenden. Ich benutzegit submodule update --remote --recursive --init