मुझे संगीतकार के साथ कोई समस्या है। मैं स्थानीय वातावरण में गिट के साथ काम कर रहा हूं। मैं एकमात्र डेवलपर हूं।संगीतकार तैनाती पर मेरी निर्भरताओं को क्यों हटाता है?
जब मुझे कुछ और निर्भरताओं की आवश्यकता होती है (या कुछ संस्करणों को बदलने की आवश्यकता है), तो मैं composer.json संपादित करता हूं और composer install
स्थानीय रूप से चलाता हूं।
सबकुछ ठीक है।
तब, जब सब कुछ स्थानीय स्तर पर काम करता है, मैं अपने परिवर्तनों (composer.json और composer.lock सहित) के लिए प्रतिबद्ध है और मेरे उत्पादन सर्वर से धक्का।
ए पोस्ट-प्राप्त स्क्रिप्ट स्रोत अद्यतन करता है और दूरस्थ सर्वर पर composer install
चलाता है।
क्या उम्मीद है:
- संगीतकार composer.lock फ़ाइल के अनुसार नई निर्भरता स्थापित करना चाहिए।
- मुझे खुश होना चाहिए।
क्या होता है:
- संगीतकार नाराज है:
चेतावनी: ताला फ़ाइल composer.json में नवीनतम परिवर्तनों के साथ तारीख तक नहीं है। आपको पुरानी निर्भरता मिल रही है। पर अपडेट चलाएं उन्हें अपडेट करें।
- संगीतकार सभी निर्भरता निकाल देता है।
- मेरा उत्पादन टूट गया है।
- मैं एक दिल का दौरा
- मैं ssh के माध्यम से अपने सर्वर में लॉग इन करें और सब कुछ ठीक काम करने के लिए एक
composer update
चलाने की ज़रूरत नहीं है, लेकिन मुझे पता है कि एकcomposer update
एक उत्पादन सर्वर पर अनुशंसित नहीं है।composer install Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them. - Removing guzzle/guzzle (v3.9.3) - Removing symfony/event-dispatcher (v2.7.1) - Removing geoip/geoip (v1.15) - Removing pimple/pimple (v3.0.0) - Removing cocur/slugify (1.1.x-dev) - Removing bentools/url (0.2) - Removing bentools/simplexmlextended (1.2.0) Generating autoload files
क्या मैं गलत कर रहा हूँ:
यहाँ बाद प्राप्त संगीतकार के अनुभाग के उत्पादन में है?
धन्यवाद, बेन
ठीक है, मैं इसे इस तरह से करूँगा। मामले के लिए जिथूब नीचे है, आपकी सलाह क्या है? – user4994579
न तो गिट और न ही संगीतकार तैनाती उपकरण हैं। वे इतने सारे के रूप में उपयोग करते हैं, लेकिन इसका मतलब यह नहीं है कि यह सबसे अच्छा समाधान है। आम तौर पर, आप एक ज़िप या टीजीजेड को एक साथ रखेंगे जिसमें उत्पादन अपडेट के लिए आवश्यक सभी कोड शामिल हैं (गिट में कोड और संगीतकार से सबकुछ सहित), इसे उत्पादन मशीन पर ले जाएं, इसे अनपैक करें, (इसे छुपाएं जगह - वैकल्पिक), और उसके बाद तुरंत स्विच करें।इसके लिए उपकरण हैं - कैपिस्ट्रानो उनमें से एक है। गीथब डाउनटाइम और तेज़ पहुंच से बचने के लिए, आप उपयोग की निर्भरताओं की एक स्थानीय प्रतिलिपि बनाने के लिए सैटिस का उपयोग करें। विवरण एक नया सवाल वारंट होगा। – Sven