Вы можете сделать это с помощью подмодулей в git. В вашем хранилище выполните:
git submodule add path_to_repo path_where_you_want_it
Итак, если в хранилище библиотеки был URL-адрес, git://github.com/example/some_lib.git
и вы хотели, чтобы он был lib/some_lib
в вашем проекте, вы должны ввести:
git submodule add git://github.com/example/some_lib.git lib/some_lib
Обратите внимание, что это нужно сделать из каталога верхнего уровня в вашем хранилище. Так что не cd
в каталог, где вы помещаете это первым.
После того, как вы добавите подмодуль или когда кто-нибудь сделает новую проверку вашего хранилища, вам нужно будет сделать:
git submodule init
git submodule update
И тогда все добавленные вами подмодули будут проверены с той же ревизией, что и у вас.
Если вы хотите обновить до более новой версии одной из библиотек, cd
в подмодуль и потяните:
cd lib/some_lib
git pull
Затем, когда вы делаете, git status
вы должны увидеть lib/somelib
список в измененном разделе. Добавьте этот файл, подтвердите, и вы в курсе. Когда соавтор извлекает эти коммиты в свой репозиторий, они будут видеть lib/somelib
измененные, пока не запустятся git submodule update
снова.
git submodule update --remote
я рекомендую использовать больше флагов, хотя для более сложных проектов. Я используюgit submodule update --remote --recursive --init