2012-08-07 13 views

उत्तर

6

आम तौर पर निर्भरता एक नोड परियोजना में package.json के माध्यम से स्थापित कर रहे हैं: https://docs.npmjs.com/files/package.json

आप npm install --save my-dependency के साथ प्रत्येक निर्भरता स्थापित करें और उसे package.json फाइल करने के लिए जोड़ दिया जाएगा। तो प्रोजेक्ट पर अगला व्यक्ति पैकेज.जेसन के उसी फ़ोल्डर पर npm install कमांड के साथ सभी निर्भरताओं को स्थापित कर सकता है।

लेकिन मेरे मामले में मैं एक टेक्स्ट फ़ाइल के माध्यम से एनपीएम की वैश्विक आवश्यकताओं को स्थापित करना चाहता था (pip install -r requirements.txt के समान)।

आप उस के साथ कर सकते हैं:

cat requirements.txt | xargs npm install -g

9

आप npm shrinkwrap के लिए दस्तावेज़ पर एक नज़र लेने के लिए चाहते हो सकता है। यह npm-shrinkwrap.json बनाता है, जो इंस्टॉल करते समय किसी भी package.json पर प्राथमिकता लेगा।

असल में, बराबर है:

npm shrinkwrap 
npm install 

संपादित करें:

v5.0.0 के बाद से, NPM अब हमेशा एक package-lock.json बनाता है, npm-shrinkwrap.json रूप में एक ही प्रारूप के साथ। तब से अन्य परिवर्तन हुए हैं, कम से कम नवीनतम v5.6.0 में नहीं। package-lock docs देखें।

+2

यह भी ध्यान दें कि एनपीएम में ऐसी सुविधा है जो पीपी नहीं करता है - डीपी की सूची में स्थापित होने के साथ ही इसमें शामिल है। 'Npm इंस्टॉल करें - एक पैकेज बचाएं '(या' npm install - सेव-देव aDevPackage') का उपयोग करें। – Pat

1

एक पाठ फ़ाइल से विश्व स्तर पर NPM संकुल स्थापित करने के लिए (जैसे npm-requirements.txt) एक प्रारूप एक पिप आवश्यकता फ़ाइल के लिए इसी तरह के साथ:

sed 's/#.*//' npm-requirements.txt | xargs npm install -g 

यह पीआईपी की तरह, आवश्यकताओं फ़ाइल में टिप्पणियों की अनुमति देता है। (source)

एक कमांड pip freeze > requirements.txt के समान है:

ls "$(npm root -g)" > npm-requirements.txt 

बहरहाल, यह है क्योंकि यह NPM संकुल की संस्करण संख्या को बचाने नहीं करता अपूर्ण है।

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