Я пытаюсь использовать modman
( https://github.com/colinmollenhour/modman ) для управления своими расширениями в github.
Сначала я пытаюсь добавить MagePsycho_Someext
расширение как демо.
До сих пор я сделал следующие шаги
/var/www/magento-dir/ -> My Magento Installation Dir
/var/www/MagePsycho_Extensions/ --> Git Repository Dir
cd /var/www/MagePsycho_Extensions/
git clone git@github.com:magepsycho/Someext.git
touch modman
git commit -am 'Modman file added'
git push origin master
cd /var/www/magento-dir/
modman init
modman clone git@github.com:magepsycho/Someext.git
- Разработал расширение 'MagePsycho_Someext' в / var / www / magento-dir со следующими файлами
- приложение / и т.д. / модули / MagePsycho_Someext.xml
- Приложение / код / местные / MagePsycho / Someext / и т.д. / config.xml
- Приложение / код / местные / MagePsycho / Someext / Helper / Data.php
10 Добавлена информация о сопоставлении файлов в /var/www/magento-dir/.modman/Someext/modman как
app/etc/modules/MagePsycho_Someext.xml app/etc/modules/MagePsycho_Someext.xml
app/code/local/MagePsycho/Someext/etc/config.xml app/code/local/MagePsycho/Someext/etc/config.xml
app/code/local/MagePsycho/Someext/Helper/Data.php app/code/local/MagePsycho/Someext/Helper/Data.php
11 modman update Someext
но получил следующие ошибки:
WARNING: Target does not exist (.modman/Someext/modman):
app/etc/modules/MagePsycho_Someext.xml app/etc/modules/MagePsycho_Someext.xml
Примечания : я разрабатываю расширения в /var/www/magento-dir/
. И вы хотите развернуть эти расширения (по одному на репозиторий) в github, используя modman. Когда я закончу разработку модуля, я хочу, чтобы эти файлы были добавлены в хранилище. Для этого я использовал файл .modman / * / modman для отображения. Но не может заставить его работать.
Где и что мне не хватает?
Или это неправильный подход?
[РЕДАКТИРОВАТЬ]
Я только что понял, что мой подход прямо противоположен. Во-первых, вы должны добавить файлы расширений и modman с сопоставлениями путей, поместить их в репозиторий и затем использовать modman clone
.
Как бы вы поступили, если бы сначала разработали расширение, а затем использовали modman для внесения изменений в репозиторий?
Ответы:
Наконец, я выяснил способ управления модулями Magento с помощью Modman (хотя это не идеальный способ, но он работает для меня)
Предположения
cd /var/www/MagePsycho_Extensions/
git clone git@github.com:magepsycho/Someext.git
touch modman
git commit -am 'Modman file added'
git push origin master
cd /var/www/magento-dir/
modman init
modman link /var/www/MagePsycho_Extensions/Someext
10 Добавьте информацию о сопоставлении файлов в /var/www/magento-dir/.modman/Someext/modman как
11
modman repair
12
cd /var/www/magento-dir/.modman/Someext
13
git add app/etc/modules/MagePsycho_Someext.xml app/code/local/MagePsycho/Someext/etc/config.xml app/code/local/MagePsycho/Someext/Helper/Data.php
14
git commit -m 'Extension files updated.'
15
git push origin master
16 Вот и все.
Таким образом, вы будете работать с каталогом magento-dir / .modman / Someext, который связан с magento-dir. Всякий раз, когда вы добавляете новые файлы в свое расширение, вы должны обновлять файл modman и запускать его, чтобы
modman repair
поддерживать актуальность символических ссылок.Если у кого есть лучший подход, пожалуйста, поделитесь.
источник
Так что мой совет здесь , так как у вас есть локальная копия расширения в любом случае , то использовать
link
иdeploy
команды , а неclone
В вашем случае вы просто позвоните:
modman init
modman link ../Your_Extension_Path
(если это одно расширение)modman deploy Your_Extension_Path
Этот метод требует, чтобы у вас в каталоге расширений был файл modman с сопоставлениями файлов, но, судя по вашим комментариям, у вас это уже есть.
Насколько я понимаю, файлы должны быть сначала в расширении dir, затем они будут связаны с magento dir, поэтому, когда вы будете в будущем вносить изменения в файлы в magento, файлы расширений также будут изменены. Может быть, есть способ создать расширение modman из каталога magento, но, к сожалению, я этого не знаю.
Простой способ скопировать файлы из Magento в каталог расширений - это открыть два проводника окон для окон и скопировать их или использовать что-то вроде полуночного командира.
Примечание: я использовал только модман для версии PHP, но этот процесс работает для этого
источник
../MagePsycho_extenstion/Extension1
а затем развернуть будетMagePsycho_extenstion/Extension1
илиExtension1
я не уверен, не попробовав это.