У меня есть ряд проектов в Eclipse PDT, которые являются всеми веб-сайтами. Все эти веб-сайты используют систему управления контентом, которую я разработал. Я переместил код для CMS в отдельный проект, готовый к совместному использованию.Какова наилучшая практика для обмена кодами между проектами в Eclipse PDT, сохраняя при этом тестовую способность с помощью веб-сервера?
До сих пор у меня есть проект/файловая структура, подобная этой:
CMS [CMS master]
-CMSlib
Website1
-scripts
-CMSlib
Website2
-scripts
-CMSlib
Папка CMS\CMSlib
содержит общий код и сам проект CMS связан с локальным репозиторием Git и представляет собой последнюю версию. Я не уверен, как мне поделиться этим кодом между проектами. Если я хочу поделиться этим кодом, я должен уметь сохранить следующие функции рабочего процесса:
- Я должен быть в состоянии проверить веб-сайты на веб-сервере. У меня есть WAMP , установленный для этой цели. Добавление проекта
CMS
к каждому проекту веб-сайта включает путь в Eclipse, не подходит, поскольку веб-сервер не знает eclipse. Поэтому мне нужно, чтобы файлы присутствовали локально (в идеале в пределах папкаscripts\CMSlib
в рамках каждого проекта веб-сайта). - Код для CMS должен быть легко обновлен для всех веб-сайтов. Поэтому, если я добавлю к проекту
CMS
, должно быть легко обновить код CMS для каждого проекта сайта .
Так какова наилучшая практика, когда эти требования необходимы? Есть ли способ вытащить файлы из репозитория в другие проекты с помощью EGit (кстати, я начинаю Git)? Или я пропустил некоторые другие настройки, которые позволяют это сделать, используя путь включения?
Примечание: Копирование и вставка CMS\CMSlib
в scripts
папку веб-сайт проекта придумывает поле опции заставляет меня пропустить работу, если папка scripts\CMSlib
уже существует.
Правильно ли я полагаю, что для использования этой функции мне пришлось бы управлять версиями каждого проекта веб-сайта, а затем добавлять подмодуль внутри каждого из них, который ссылается на репозиторий CMS? Если это так, единственная проблема заключается в том, что было бы предпочтительнее не иметь контроль над версиями каждого веб-сайта. Будет ли это означать, что каждый раз, когда изменения происходят в проекте CMS, он автоматически обновляет все подмодули, связанные с ним? – Jonathan
Я ответил на ваши вопросы с помощью обновления ответа. –
Я уже обращался к вопросу о включении пути в первый пункт в моем вопросе.Проблема, просто требующая кода, заключается в том, что каждый проект веб-сайта представляет собой общедоступный каталог хостинга public_html/www. Поэтому код должен быть где-то внутри этого каталога, который будет проверяться локально (и точно) с помощью WAMP и ftp'd. Я думаю, что немного проверю функцию подмодулей. В противном случае я пересмотрю структуру проекта. – Jonathan