Ich versuche modman
( https://github.com/colinmollenhour/modman ) zu verwenden, um meine Erweiterungen in Github zu verwalten.
Zuerst versuche ich, eine MagePsycho_Someext
Erweiterung als Demo hinzuzufügen .
Bisher habe ich folgende Schritte durchgeführt
/var/www/magento-dir/ -> My Magento Installation Dir
/var/www/MagePsycho_Extensions/ --> Git Repository Dir
cd /var/www/MagePsycho_Extensions/
git clone [email protected]:magepsycho/Someext.git
touch modman
git commit -am 'Modman file added'
git push origin master
cd /var/www/magento-dir/
modman init
modman clone [email protected]:magepsycho/Someext.git
- Entwickelte die Erweiterung 'MagePsycho_Someext' in / var / www / magento-dir mit den folgenden Dateien
- app / etc / modules / MagePsycho_Someext.xml
- app / code / local / MagePsycho / Someext / etc / config.xml
- app / code / local / MagePsycho / Someext / Helper / Data.php
10 Die Datei-Mapping-Informationen in /var/www/magento-dir/.modman/Someext/modman as wurden hinzugefügt
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
habe aber folgende fehler bekommen:
WARNING: Target does not exist (.modman/Someext/modman):
app/etc/modules/MagePsycho_Someext.xml app/etc/modules/MagePsycho_Someext.xml
Anmerkungen : Ich entwickle Erweiterungen in /var/www/magento-dir/
. Und wollen diese Erweiterungen (eine pro Repository) in Github mit Modman bereitstellen. Wenn ich mit der Modulentwicklung fertig bin, möchte ich, dass diese Dateien zum Repository hinzugefügt werden. Dafür habe ich die .modman / * / modman-Datei für die Zuordnung verwendet. Aber nicht in der Lage, es zum Laufen zu bringen.
Wo und was fehle ich?
Oder ist das der falsche Ansatz?
[BEARBEITEN]
Mir ist gerade klar geworden, dass mein Ansatz genau umgekehrt ist. Zuerst müssen Sie Erweiterungsdateien und Modman mit Pfadzuordnungen hinzufügen, zum Repo verschieben und dann mit ziehen modman clone
.
Wie würden Sie vorgehen, wenn Sie zuerst die Erweiterung entwickeln und dann Modman verwenden, um Änderungen am Repo vorzunehmen?
Antworten:
Schließlich habe ich herausgefunden, wie man Magento-Module mit Modman verwaltet (nicht der perfekte Weg, aber er funktioniert für mich)
Annahmen
cd /var/www/MagePsycho_Extensions/
git clone [email protected]: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 Fügen Sie die Datei-Mapping-Informationen in /var/www/magento-dir/.modman/Someext/modman als hinzu
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 Das ist alles.
Zusammenfassend arbeiten Sie am Verzeichnis magento-dir / .modman / Someext, das mit magento-dir verknüpft ist. Immer wenn Sie neue Dateien zu Ihrer Erweiterung hinzufügen, müssen Sie die Modman-Datei aktualisieren und ausführen
modman repair
, um die Symlinks auf dem neuesten Stand zu halten.Wenn jemand eine bessere Herangehensweise hat, teile dies bitte mit.
quelle
Mein Rat hier ist also, dass Sie ohnehin eine lokale Kopie der Erweiterung haben und dann die Befehle
link
unddeploy
anstatt der verwendenclone
In Ihrem Fall würden Sie einfach anrufen:
modman init
modman link ../Your_Extension_Path
(wenn dies eine einzelne Erweiterung ist)modman deploy Your_Extension_Path
Für diese Methode muss die Modman-Datei in Ihrem Erweiterungsverzeichnis mit Dateizuordnungen vollständig sein, aber aus Ihren Kommentaren geht hervor, dass Sie diese bereits haben.
Nach meinem Verständnis müssen sich die Dateien zuerst im Erweiterungsverzeichnis befinden, sie werden dann mit dem Magento-Verzeichnis verknüpft. Wenn Sie also zukünftige Änderungen an den Dateien unter Magento vornehmen, werden auch die Erweiterungsdateien geändert. Vielleicht gibt es eine Möglichkeit, eine Modman-Erweiterung aus einem Magento-Verzeichnis zu erstellen, aber ich kenne sie leider nicht.
Eine einfache Möglichkeit, Dateien von Magento in ein Erweiterungsverzeichnis zu kopieren, besteht darin, entweder zwei Windows Explorer für Windows zu öffnen und diese zu kopieren oder so etwas wie Mitternachtskommandeur zu verwenden
Hinweis: Ich habe nur den Modman für die PHP-Version verwendet, aber dieser Prozess funktioniert dafür
quelle
../MagePsycho_extenstion/Extension1
und dann bereitstellen,MagePsycho_extenstion/Extension1
oderExtension1
ich bin mir nicht sicher, ohne es auszuprobieren.