2016-04-21 12 views
6

composer.json में एक "संस्करण" फ़ील्ड निर्दिष्ट करना संभव है; यहां एक उदाहरण है:composer.json में "संस्करण" फ़ील्ड का अर्थ क्या है?

{ 
    "name": "vendor/dummy_package", 
    "description": "Dummy package", 
    "version": "1.0.0" 
} 

इस क्षेत्र का अर्थ कौन सा अनिवार्य प्रतीत नहीं होता है?

यह vendor/dummy_package के लिए जरूरी संस्करणों की तुलना करने के लिए इस्तेमाल है?

उस स्थिति में, क्या यह टैग पर जीतता है?

धन्यवाद! संगीतकार एक निर्भरता के रूप में पैकेज को हल करने के लिए

उत्तर

9

संस्करण आवश्यक है। हालांकि, ज्यादातर मामलों में (और पैकेजिस्ट पर 100% समय) संस्करण को भंडार में टैग और शाखाओं से लिया जाता है।

उन मामलों में, यदि संस्करण composer.json में मौजूद है, तो शाखाओं के लिए इसे अनदेखा कर दिया जाएगा, लेकिन टैग के लिए इसे टैग नाम से मेल खाना चाहिए, अन्यथा संगीतकार उस टैग को अमान्य मान देगा क्योंकि इसमें विरोधाभासी संस्करण जानकारी है। इसके कारण हम आम तौर पर अनुशंसा करते हैं कि लोग पूरी तरह से संस्करण छोड़ दें क्योंकि इससे समस्याओं की संभावना कम हो जाती है।

कुछ मामलों में जैसे कि आप artifact repository का उपयोग करना चाहते हैं उदाहरण के लिए, आपको composer.json में संस्करण निर्दिष्ट करना होगा।

संक्षेप में: आप पता नहीं है है कि आप इसे में की जरूरत है, तो यह बाहर छोड़ :)

संबंधित मुद्दे