Я пытаюсь настроить мою (Zend Framework) среду разработки (или, что более важно, мою структуру каталогов) с помощью git.Тем не менее, мой основной вопрос на самом деле не имеет ничего общего с конкретными задействованными библиотеками, но, что более важно, как получить git, чтобы выполнить то, что я хочу.
У меня будет корневой каталог проекта /home/jsuggs/project
.
Я также собираюсь работать с / над Zend Framework (ZF), Doctrine и другими библиотеками, но я сосредоточусь только на ZF, поскольку решение для одной из них, вероятно, будет таким же, как и для других.
Я буду клонировать репозиторий ZF2 в /home/jsuggs/zf2
.
Я хотел бы иметь /home/jsuggs/project/application/library/Zend
ссылку /home/jsuggs/zf2/library/Zend
.
Я хочу иметь возможность работать локально в обоих репозиториях (project и zf2), где переключение веток в zf2 напрямую влияет на проект.
Мой вопрос: как мне настроить Git, чтобы глубоко вложенные библиотеки могли ссылаться на мои локальные версии во время разработки, но также могли быть установлены (другие / произвольные) расположения при развертывании в производство?
Я также хотел бы избежать того, чтобы пути были абсолютными, чтобы, если кто-то еще работал над проектом, путь к библиотеке не ссылался на мой домашний каталог.
Я изучаю использование символических ссылок и gitсубмодули, но задавался вопросом, были ли "лучшие практики" для этого типа установки.Кроме того, вполне возможно, что я просто делаю это неправильно, поэтому не стесняйтесь говорить «просто делай Х вместо этого».