Часто бывает так, что у разработчика со-временем накапливается некоторая коллекция кода который он использует в своих проектах.
Одни скрипты он использует в одних проектах, другие в других.
Эти скрипты со-временем совершенствуются, убираются баги, оптимизируются. Поэтому появляется вопрос, как синхронизировать новые версии скриптов с теми, которые в проектах.
Тут есть несколько вариантов:
Первый вариант:
Создать один репозиторий и поместить туда все скрипты. Затем этот репозиторий подключается как подмодуль к проекту и используется.
Минусы:
- в проект копируются все скрипты включая ненужные.
- подмодуль не commit-ится в репозиторий проекта, поэтому если будет недоступен удаленный репозиторий подмодуля, то мы не сможет выкачать проект целиком.
Второй вариант:
Каждый скрипт отдельно хранить на Github gist и подключать нужные как подмодули
Минус тот-же, что и в первом варианте во втором пункте.
Третий вариант:
Использовать Git Subtree.
(Данное решение является альтернативой для Git submodules)
Читать полностью »