Magento 2: एक "मेटा पैकेज" स्थापित करना


11

कुछ समय पहले, मैंने संगीतकार मेटा-पैकेज के माध्यम से Magento 2 स्थापित किया था । इसे इंटीग्रेटर इंस्टॉल के रूप में भी जाना जाता है।

यह Magento CE 2.0.1 स्थापित है प्रतीत होता है। क्या इस संस्करण को नवीनतम Magento CE 2.0.3 में अपग्रेड करने का कोई तरीका है? मुझे लगता है कि मैं composer.json2.0.1 यहाँ अद्यतन कर सकता है

"require": {
    "magento/product-community-edition": "2.0.1",

हो जाता है

"require": {
    "magento/product-community-edition": "2.0.3",

हालाँकि, जैसे फ़ाइलों को याद करेगा

app/etc/NonComposerComponentRegistration.php 

साथ ही कंपोजर.जसन के लिए कोई भी अपडेट खुद ही फाइल करें।

क्या मेटा पैकेज के साथ इंस्टॉल किए गए Magento 2 के संस्करण को अपडेट करना संभव है? या यह मेटा पैकेज का इरादा नहीं है?


alankent.me/2016/03/31/… कुछ उपयोगी जानकारी हो सकती है। मेरा मानना ​​है कि जब आप कंपोजर के लिए मैगनेटो इंस्टॉलर प्लग इन के कारण अपग्रेड करते हैं तो NonComposerComponentRegistration.php अपडेट हो जाएगा। यदि कोई नया 'magento2-base' मॉड्यूल है, तो यह बेस मॉड्यूल द्वारा पहले से स्थापित फाइलों को बदल देगा। आलेख स्थानीय परिवर्तनों को संरक्षित करने के लिए "गिट का उपयोग करें" की सिफारिश करता है। आप डिफ़ॉल्ट फ़ाइल github.com/magento/magento2/blob/develop/app/etc/… को ठीक कर सकते हैं , जिसे "magento2-base" पैकेज में पैकेज मिलता है।
एलन केंट

"मुझे विश्वास है कि NonComposerComponentRegistration.php को अपडेट किया जाएगा" जो कि एक नकारात्मक है - या, कम से कम, मेरे विशिष्ट उदाहरण में 2.0.1 से 2.0.3 तक चल रहा है, संगीतकार नवीनीकरण ने NonComposerComponentRegistration.php स्थापित नहीं किया है, और ऐप को अपडेट नहीं किया है /etc/di.xml।
एलन स्ट्रॉम

आप सिस्टम अपग्रेड या कमांड लाइन से मेटापेज को अपडेट कर सकते हैं। चेतावनी इस समय हम 2.0.4 और 2.0.3 का उपयोग के साथ बदल रहे हैं के लिए कम से repo.magento.comअवरुद्ध है। एक घोषणा की प्रतीक्षा करें। चरण 1, रन composer require <string> <version> --noupdate(सिंटैक्स की जांच करें)। चरण 2, भागो composer update। चरण 3, रनbin/magento setup:upgrade
स्टीव जॉनसन

@SteveJohnson यह फ़ाइलों को बाहर कैसे अपडेट करेगा vendor?
एलन स्टॉर्म

जवाबों:


3

मैंने अपनी composer.jsonफ़ाइल को 2.0.2 के बजाय 2.0.4 का उपयोग करने के लिए समायोजित किया (हाथ से), और बाद में भाग गया composer updateऔर php bin/magento setup:upgrade। यहां निर्दोष काम किया।

मेरा मानना ​​है कि Magento संगीतकार इंस्टॉलर पैकेज app/आदि फ़ोल्डर में फ़ाइलों की स्थापना को संभालता है , जो उन्नयन पर सामान को भी अपडेट करता है। लेकिन, यह अंतिम हिस्सा सिर्फ धारणा है क्योंकि मुझे इसे डिबग नहीं करना पड़ा है।


@alanstorm, क्या इन उत्तरों में से कोई मदद करता है?
स्टीव जॉन्सन

@stefandoorn आप फ़ाइल खोल सकते हैं app/etc/NonComposerComponentRegistration.phpऔर कॉपीराइट के वर्ष की पुष्टि कर सकते हैं
Fooman

/ ** * कॉपीराइट © 2016 Magento। सभी अधिकार सुरक्षित। * लाइसेंस के विवरण के लिए COPYING.txt देखें। * /
stefandoorn

@ क्रिस्तोफटॉमन ऊपर देखें।
स्टेफंडोर्न

2

मैं वर्तमान में इसका परीक्षण नहीं कर सकता, क्योंकि कनेक्ट का संगीतकार रिपॉजिटरी टूट गया है, लेकिन मुझे आशा है कि यह अभी भी उपयोगी है।

यह composer.jsonमेरा अपना प्रोजेक्ट है https://github.com/Cotya/DashboardProject/blob/6ce3f307c53a3fb54c94d8a7bd70b306036da928/comerer.json

मैं "magento/product-community-edition": "^2.0"वास्तव में एक साधारण composer update --with-dependencies magento/product-community-editionकमांड के साथ अद्यतन करने में सक्षम होने के लिए हाल ही में बदल गया । मैं हमेशा स्पष्ट रूप से नाम रखता हूं कि क्या अद्यतन किया जाना चाहिए, इसे अन्य पैकेजों के साथ मिश्रण करने के लिए नहीं जो मुझे मैगेंटो के अलावा चाहिए, लेकिन इसलिए मुझे --with-dependenciesतर्क की आवश्यकता है।

इस वर्कफ़्लो का एक बहुत महत्वपूर्ण हिस्सा composer.lockप्रत्येक (सफलतापूर्वक परीक्षण किए गए) अद्यतन के बाद फ़ाइल को प्रतिबद्ध करना है। जैसा कि आप देखते हैं कि लॉक फ़ाइल का रूप GitHub के लिए बहुत बड़ा है, यह सब निर्भरता अपडेट और कारण का एक परिणाम है, तो आपको कुछ और के अपडेट के साथ मैगेंटो अपडेट को क्यों नहीं मिलाया जाना चाहिए।

जैसा कि आप देख सकते हैं, मैंने फाइलों को NonComposerComponentRegistrationअपने लिए परिभाषित किया है , आप उनमें से कई हो सकते हैं। मेरे दृष्टिकोण के नकारात्मक पक्ष यह है कि जब परियोजना में परिवर्तन composer.jsonहोते हैं, तो आपको उन्हें मैन्युअल रूप से लागू करने की आवश्यकता होती है।

जैसा कि आपने NonComposerComponentRegistrationफ़ाइल के अद्यतन के बारे में पूछा है , अभी भी एक "कुछ" फाइलें हैं, जो विक्रेता से लक्ष्य निर्देशिका में कॉपी हो जाती हैं, इसीलिए मैंने इसे स्पष्ट रूप buildसे जनरेट / कॉपी किए गए सामान के साथ मिश्रण नहीं करने के लिए नाम दिया है ।

आशा है कि मदद करता है, भले ही यह M2 का एक अनूठा सेटअप है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.