Puoi farlo con i sottomoduli in git. Nel tuo repository, esegui:
git submodule add path_to_repo path_where_you_want_it
Quindi, se il repository della libreria avesse un URL di git://github.com/example/some_lib.git
e lo volessi lib/some_lib
nel tuo progetto, dovresti inserire:
git submodule add git://github.com/example/some_lib.git lib/some_lib
Si noti che questo deve essere fatto dalla directory di livello superiore nel repository. Quindi non cd
entrare nella directory in cui la metti per prima.
Dopo aver aggiunto un sottomodulo o ogni volta che qualcuno effettua un nuovo checkout del tuo repository, dovrai fare:
git submodule init
git submodule update
E poi tutti i sottomoduli che hai aggiunto verranno verificati con la stessa revisione che hai.
Quando si desidera aggiornare a una versione più recente di una delle librerie, cd
nel sottomodulo e tirare:
cd lib/some_lib
git pull
Quindi, quando lo fai git status
, dovresti vedere lib/somelib
elencati nella sezione modificata. Aggiungi quel file, esegui il commit e sarai aggiornato. Quando un collaboratore inserisce il commit nel proprio repository, lo vedrà lib/somelib
modificato fino a quando non verrà eseguito git submodule update
nuovamente.