Composerontwikkeling
Dit onderwerp beschrijft de geadviseerde benadering voor het ontwikkelen van modules Composer op zijn plaats (als bewaarplaatsen van Git in de vendor/
folder) en het toevoegen van die modules aan uw belangrijkste project van Git.
Een ontwikkelingsvertakking voorbereiden
-
Maak of check de ontwikkelingsvertakking uit in uw belangrijkste Git-opslagplaats.
-
Vereisen ontwikkelingsversies voor elke module die u handhaaft.
In dit voorbeeld vertegenwoordigt elke vertakking in de Git-hoofdopslagplaats een versie van het Composer-pakket. De aanbevolen naamgevingsconventie voor Composer-versies in dit scenario is
dev-
gevolgd door de naam van de vertakking. Bijvoorbeeld:dev-develop
dev-qa
code language-bash composer require client/module-example:dev-develop
-
Als een ander Composer-pakket een specifieke versie van een module vereist (bijvoorbeeld
client/module-example 1.0.12
), installeert u deze met een alias:code language-bash composer require 'client/module-example:dev-develop as 1.0.12'
Vervang
dev-develop
doordev-qa
voor deqa
-vertakking.
Pakketten omzetten in Git-opslagruimten
Pakketten bevatten standaard geen map .git/
. Composer kan pakketten uitchecken vanuit Git in plaats van de vooraf gebouwde Composer-pakketten te gebruiken. Het voordeel van deze aanpak is dat u de pakketten tijdens de ontwikkeling eenvoudig kunt wijzigen.
-
Verwijder de module uit de map
vendor/
.code language-bash rm -rf vendor/client/module-example
-
Installeer de module opnieuw gebruikend de gespecificeerde bron van het Git.
code language-bash composer install --prefer-source
-
Controleer of het Composer-pakket nu een Git-opslagplaats is:
code language-bash cd vendor/client/module-example git remote -v
-
Meerdere modules in Git-opslagruimten (bijvoorbeeld "client"-modules) in batch omzetten:
code language-bash rm -rf vendor/client composer install --prefer-source
Ontwikkeling starten
-
Een functie/werkvertakking maken of uitchecken. In het volgende voorbeeld ziet u een vertakking met dezelfde naam als een Jira-ticket.
code language-bash cd vendor/client/module-example git checkout master git checkout -b JIRA-1200
-
Nadat u vertakkingen in een module hebt gewijzigd, raadpleegt u de wijzigingen door de Adobe Commerce-cache en statische inhoud te leegmaken.
code language-bash bin/magento cache:flush bin/magento module:enable --all --clear-static-content
Het hoofdproject bijwerken met uw ontwikkeling
Werk de hoofdopslagplaats voor Git bij door het composer.lock
-bestand te wijzigen. Als uw module nieuw is, laat het toe.
# to update your packages and all dependencies of the package
composer update --with-all-dependencies client/module-example
# to update just your package
composer update client/module-example
bin/magento module:enable Client_ModuleExample
git add composer.lock app/etc/config.php
git commit