Це може бути одним із видів дискусій, а не питанням.
Я хотів би знати, яку політику розгортання ви дотримуєтесь у Magento2 & local > staging > виробничі середовища
Після кількох спроб ми вирішили, що найкращим (або, принаймні, найбільш солідним) підходом буде цей файл gitignore, включаючи папку vendor у git.
.DS_Store
/.buildpath
/.cache
/.metadata
/.project
/.settings
atlassian*
/nbproject
/sitemap
/sitemap.xml
/.idea
/.gitattributes
/app/config_sandbox
/app/etc/config.php
/app/etc/env.php
/app/code/Magento/TestModule*
/lib/internal/flex/uploader/.actionScriptProperties
/lib/internal/flex/uploader/.flexProperties
/lib/internal/flex/uploader/.project
/lib/internal/flex/uploader/.settings
/lib/internal/flex/varien/.actionScriptProperties
/lib/internal/flex/varien/.flexLibProperties
/lib/internal/flex/varien/.project
/lib/internal/flex/varien/.settings
/node_modules
/.grunt
/pestle.phar
/pub/media/*.*
!/pub/media/.htaccess
/pub/media/catalog/*
!/pub/media/catalog/.htaccess
/pub/media/customer/*
!/pub/media/customer/.htaccess
/pub/media/downloadable/*
!/pub/media/downloadable/.htaccess
/pub/media/import/*
!/pub/media/import/.htaccess
/pub/media/theme/*
/pub/media/theme_customization/*
!/pub/media/theme_customization/.htaccess
/pub/media/wysiwyg/*
!/pub/media/wysiwyg/.htaccess
/pub/media/tmp/*
!/pub/media/tmp/.htaccess
/pub/media/captcha/*
/pub/static/***
!/pub/static/.htaccess
/var/*
!/var/.htaccess
.unison*
/sync.sh
Таким чином, ми запускаємо композитора лише в локальному середовищі: оскільки будь-яке нове розширення або оновлення програмного забезпечення тестується в локальному, потім перевіреному та здійсненому. Ми, мабуть, тоді також включимо файл app / etc / config.php у git, але цей файл перезаписується під час запуску setup:upgrade
, правда?
У тому числі розмір сховища постачальника буде більшим, ніж (можливо) рекомендованим, але таким чином, розгортаючи код, ми просто запускаємо послідовність:
bin/magento setup:upgrade
bin/magento setup:di:compile (optional)
bin/magento setup:static-content:deploy
Пов'язана інформація: http://www.damianculotta.com.ar/magento/gitignore-y-la-estrategia-de-deploys-en-magento2
Подивіться, чому ми вибираємо команду компіляції як необов'язковий Magento 2 - setup: di: compile ?
ОНОВЛЕННЯ
Правда, у нас виникають деякі проблеми при розгортанні змін коду в наших опублікованих проектах Magento 2
Зміни працюють у локальній та інсценізації (перевіряється в обох режимах: розробник та виробництво ... хоча ми концептуально налаштовуємо це середовище у режимі розробника), але деякі з них не працюють у виробничому середовищі (у режимі виробництва) тощо ... тож я не впевнений, що ми дотримуємося правильної стратегії. Я хотів би побачити, яка відповідна послідовність команд, і відповідність порядку в цих командах
Насправді щодня я все менше переконуюсь у корисності режиму виробництва Magento 2, якщо тільки ви не збираєтесь нічого змінювати в проекті. Ви можете змінити свою думку?