Pull to refresh

Использование различных VCS репозиториев в PhpStorm

Reading time 2 min
Views 17K

Введение


При развертывании проектов основанных на модульных приложениях (например, Magento) сталкиваешься с тем, что в проекте сосуществует код, находящийся в различных репозиториях. PhpStorm вполне хорошо справляется с подобной ситуацией. Допустим, у нас есть основной проект, расположенный на Github'е, в котором используются один новый модуль, расположенный там же, и один legacy-модуль, расположенный в SVN-репозитории:


Работать одновременно с несколькими git-репозиториями позволяет механизм git submodules, а PhpStorm также позволяет к этому добавить и SVN-репозиторий.


Формируем проект


Клонируем основной проект, в котором еще нет субмодулей, на локальный диск:
git clone https://github.com/praxigento/z_git_submodules_main.git
cd .\z_git_submodules_main
# добавляем субмодули
git submodule add https://github.com/praxigento/z_mage_composer_mod_01.git modules/mod01


В файле .gitmodules появлется нечто типа:
[submodule "modules/mod_git"]
	path = modules/mod_git
	url = https://github.com/praxigento/z_mage_composer_mod_01.git


При клонировании основного проекта, в котором уже подключены git-субмодули нужно дополнительно их инициировать:
git submodule init
git submodule update


Удаление субмодуля
По мотивам:
git submodule deinit -f modules/mod01
git rm -f  modules/mod01



Отдельно подключаем SVN-модуль:
svn co https://github.com/praxigento/z_mage_composer_mod_02/trunk modules/mod_svn


Должна получится примерно такая файловая структура:


Настройка PhpStorm


Указываем в настройках PhpStrom все точки монтирования репоизториев в нашем проекте:


Работа с изменениями


Вносим изменения в README файлы в каждом из модулей и в самом проекте (всего три файла):


Коммитим изменения в репозитории:


Для git-репозиториев дополнительно push'аем изменения:


Проверяем изменения во всех репозиториях:


Таким образом, мы имеем возможность коммитить наши изменения в несколько репозиториев за раз.

Обновление локального кода:
Tags:
Hubs:
0
Comments 15
Comments Comments 15

Articles