बोवर इनिट करते समय "मुख्य फ़ाइल" संपत्ति क्या है?


106

जब आप बोवर इनिट चलाते हैं तो प्रॉपर्टी मेन फाइल का क्या उपयोग होता है ? मैं देख रहा हूं और कई लोग कहते हैं कि इसका फिलहाल कोई उद्देश्य नहीं है।

क्या यह सच है? बोवर के दस्तावेज इसे स्पष्ट नहीं करते हैं।


3
ऐसा लगता है कि अन्य लोग भी इससे भ्रमित हैं। उदाहरण के लिए इस बोअर ट्यूटोरियल के लेखक: net.tutsplus.com/tutorials/tools-and-tips/…
साइमन

ऐसा प्रतीत होता है कि mainसंपत्ति की परिभाषा वर्तमान में विचाराधीन है और बोवर गीथब रेपो पर एक खुले मुद्दे में बहस की जा रही है। वर्तमान प्रस्तावित परिभाषाओं और चर्चा के लिए यहाँ देखें: github.com/bower/bower/issues/935
बेंजामिन

जवाबों:


60

Bower.io प्रलेखन के अनुसार

मुख्य

अनुशंसित प्रकार: स्ट्रिंग या स्ट्रिंग का सरणी

आपके पैकेज का उपयोग करने के लिए आवश्यक प्राथमिक अभिनय फाइलें। जबकि Bower इन फ़ाइलों का सीधे उपयोग नहीं करता है, उन्हें कमांड bower सूची --json औरbower सूची --paths के साथ सूचीबद्ध किया जाता है, इसलिए उन्हें बिल्ड टूल द्वारा उपयोग किया जा सकता है।

कॉफीस्क्रिप्ट जैसी प्रीप्रोसेसर फ़ाइलों को संकलित किया जाना चाहिए। इसमें मिनीफाइ किए गए फ़ाइलों को शामिल नहीं किया जाना चाहिए। फ़ाइलनामों को संस्करणबद्ध नहीं किया जाना चाहिए (खराब: package.1.1.0.js; अच्छा: package.js)।

मुझे लगता है कि यह पैकेज प्रबंधन के लिए अधिक है, और ग्रंट और ब्रंच जैसे टूल का निर्माण करें। उदाहरण के लिए, बूटस्ट्रैप की bower.jsonतरह दिखता है:

{
  "name": "bootstrap",
  "version": "3.0.3",
  "main": [
    "./dist/css/bootstrap.css",
    "./dist/js/bootstrap.js",
    "./dist/fonts/glyphicons-halflings-regular.eot",
    "./dist/fonts/glyphicons-halflings-regular.svg",
    "./dist/fonts/glyphicons-halflings-regular.ttf",
    "./dist/fonts/glyphicons-halflings-regular.woff"
  ],
  "ignore": [
    "**/.*",
    "_config.yml",
    "CNAME",
    "composer.json",
    "CONTRIBUTING.md",
    "docs",
    "js/tests"
  ],
  "dependencies": {
    "jquery": ">= 1.9.0"
  }
}

जब मैं ब्रंच का निर्माण करता हूं, तो यह इन फाइलों को अपने bower_componentsफोल्डर से अपने फोल्डर में खींच लेता है public


क्या "प्रलेखन"?
0xcaff

5
यह वास्तव में इस सवाल का जवाब नहीं देता है। दस्तावेज़ "आपके पैकेज के प्राथमिक समापन बिंदु" की भूमिका को स्पष्ट नहीं करता है। आपने मुख्य से ब्रंच की प्रासंगिकता बताई है, लेकिन यह नहीं कि यह बोवर से कैसे संबंधित है।
बेंजामिन

मुझे लगता है कि मैं जिस बिंदु को बनाने की कोशिश कर रहा था, वह यह है कि मुख्य फ़ाइलों का उपयोग कई बिल्ड टूल में किया जाता है, "ये वो फाइलें हैं जो मेरा बोअर पैकेज वितरित करने का इरादा रखती हैं।" यह अभी भी यह सच है इरादे के लिए एक बालक अस्पष्ट है।
केली जे एंड्रयूज

डॉक्यूमेंटेशन लिंक का एंकर मर चुका है। अपडेट के लिए @Vivian स्पेंसर का उत्तर देखें।
टिमोथी गुजरात

9

बोवर के JSON स्पेसिफिकेशन ( https://github.com/bower/spec/blob/master/json.md#main ) के अनुसार, प्रोजेक्ट में मुख्य रूप से उपयोग की जाने वाली फाइलों को सूचीबद्ध करने के लिए "मुख्य" संपत्ति का उपयोग किया जाता है। सूचीबद्ध फ़ाइलें वास्तव में किसी भी तरह से बोवर द्वारा उपयोग नहीं की जाती हैं, वे जाहिरा तौर पर अन्य बिल्ड टूल द्वारा उपयोग किए जाने के उद्देश्य से हैं।

यहाँ आधिकारिक विनिर्देश है:

मुख्य

अनुशंसित
प्रकार: Stringया ArrayकाString

आपके पैकेज का उपयोग करने के लिए आवश्यक प्राथमिक अभिनय फाइलें। जबकि Bower सीधे इन फ़ाइलों का उपयोग नहीं करता है, वे कमांड के साथ सूचीबद्ध होते हैं bower list --jsonऔर bower list --paths, इसलिए उन्हें बिल्ड टूल्स द्वारा उपयोग किया जा सकता है।

  • कॉफी की तरह प्रीप्रोसेसर फ़ाइलों को संकलित किया जाना चाहिए।
  • शामिल की गई फ़ाइलें शामिल न करें।
  • फ़ाइलनामों का संस्करण नहीं होना चाहिए (खराब: पैकेज.1.1.0.js; अच्छा: पैकेज। जेएस)।

1
कुछ पुस्तकालय सिर्फ सूचीबद्ध मुख्य फ़ाइलों के बिना काम नहीं करेंगे, सही उदाहरण के लिए वायर्डेप।
कोबूम

@kboom मेरे पास आपके द्वारा कहे जाने वाले मुद्दे से जुड़ा हो सकता है: उदाहरण के लिए pdf.js- दर्शक की सीएसएस फ़ाइल मुख्य-बोवर-फ़ाइलों का उपयोग करके कॉपी नहीं करेगा, क्या मुझे इसे मुख्य bower.json के अंदर रखना चाहिए? यदि हाँ, तो क्या मुझे वास्तव में प्रत्येक फ़ाइल के लिए संपूर्ण पथ प्रदान करना है? धन्यवाद!
ट्रैनोसैसिस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.