npm installএবং মধ্যে ব্যবহারিক পার্থক্য কি npm update? আমি কখন ব্যবহার করব?
npm installএবং মধ্যে ব্যবহারিক পার্থক্য কি npm update? আমি কখন ব্যবহার করব?
উত্তর:
মধ্যে পার্থক্য npm ইনস্টল এবং npm আপডেট প্যাকেজ সংস্করণে উল্লেখ হ্যান্ডলিং package.json :
{
"name": "my-project",
"version": "1.0", // install update
"dependencies": { // ------------------
"already-installed-versionless-module": "*", // ignores "1.0" -> "1.1"
"already-installed-semver-module": "^1.4.3" // ignores "1.4.3" -> "1.5.2"
"already-installed-versioned-module": "3.4.1" // ignores ignores
"not-yet-installed-versionless-module": "*", // installs installs
"not-yet-installed-semver-module": "^4.2.1" // installs installs
"not-yet-installed-versioned-module": "2.7.8" // installs installs
}
}
সংক্ষিপ্তসার : একমাত্র বড় পার্থক্য হ'ল ফাজি সংস্করণ সহ ইতিমধ্যে ইনস্টল করা মডিউল ...
npm installnpm updateঅতিরিক্তভাবে : installএবং updateডিফল্টরূপে ডিভডিপেন্ডেন্সগুলি আলাদাভাবে হ্যান্ডেল করে
npm installপতাকা যুক্ত না করা হলে ডেভডিপেন্ডেনগুলি ইনস্টল / আপডেট করবে--productionnpm updateপতাকা যুক্ত না করা হলে ডিভিনিডেন্সিগুলি উপেক্ষা করবে--devnpm installআদৌ কেন ব্যবহার করবেন ?
কারণ npm installআপনার নির্ভরতাগুলি পরিচালনা করার পাশাপাশি আপনি যখন আরও তাকান তখন আরও বেশি করে package.json। আপনি যেমন এনএমপি ইনস্টল করতে পারবেন তেমন করতে পারেন ...
PATH) ব্যবহার করেnpm install -g <name>--forcenpm install --save somePackageনির্ভরতা থেকে * সংরক্ষণ করা কি সম্ভব ?
postinstallইনস্টল করা চালানো, তবে আপডেটে নয়।
installএবং এর updateমধ্যে উল্লিখিত গিট ইউআরএল, গিট ট্যাগ ইত্যাদিতে আলাদাভাবে কাজ করে package.jsonতবে উদাহরণস্বরূপ এই কেসগুলি যুক্ত করা ভাল।
1.3.0 -> 1.3.1হ'ল এটি একইরকম ^1.3.0, যেখানে ^আপডেটগুলি প্রধান সংস্করণ, অর্থাৎ 1.3.0 -> 1.4.0।
এনপিএম ইনস্টলpackage.json ফাইল এবং তাদের নির্ভরতাগুলির তালিকাভুক্ত সমস্ত মডিউল ইনস্টল করে ।
এনএমপি আপডেটnode_modules ডিরেক্টরি এবং তাদের নির্ভরতার সমস্ত প্যাকেজ আপডেট করে ।
এনপিএম ইনস্টল এক্সপ্রেস কেবল এক্সপ্রেস মডিউল এবং তার নির্ভরতা ইনস্টল করে।
এনপিএম আপডেট এক্সপ্রেস আপডেট এক্সপ্রেস মডিউল (npm@2.x দিয়ে শুরু করে, এটি এর নির্ভরতা আপডেট করে না)।
সুতরাং আপডেটগুলি যখন আপনার কাছে ইতিমধ্যে মডিউল থাকবে এবং নতুন সংস্করণ পেতে চান।
npm installবা npm update? অথবা, অন্য কথায়, আমি এখন ব্যবহার করছি npm installএবং এটি আপডেটিংটিও মনে হচ্ছে, আমার কেন কখনও ব্যবহার করার কোনও কারণ আছে npm update?
updateপ্যাকেজ.জসন নির্বিশেষে সর্বদা সর্বশেষতম সংস্করণে আপডেট হবে, যখন installপ্যাকেজ.জসনে দেওয়া সংস্করণটি সম্মান করবে?
updateমডিউলটির সর্বশেষ সংস্করণ ইনস্টল (বা আপডেট)। installমডিউলটির সর্বশেষতম সংস্করণ ইনস্টল করে যদি তা উপস্থাপন না করে বর্তমান সংস্করণ রাখে।
npm updateআপনার প্যাকেজ.জসনের উপর ভিত্তি করে সর্বশেষতম সংস্করণে আপডেট করবে, তা নির্বিশেষে। আপনার যদি "এক্সপ্রেস": "3.x" থাকে এবং আপনি সংস্করণ 3.1.0 এ থাকেন তবে এটি সর্বশেষ 3.x ট্যাগে আপডেট হবে। যদি একটি 4.x সংস্করণ থাকে তবে এটি সর্বশেষতম ইনস্টল করবে না।
বেশিরভাগ ক্ষেত্রে, এটি এনপিএম-এ প্রকাশিত মডিউলটির সর্বশেষতম সংস্করণ ইনস্টল করবে।
npm install express --save
বা সর্বশেষ সংস্করণ ব্যবহারে মডিউল আপগ্রেড করার আরও ভাল:
npm install express@latest --save --force
--save: প্যাকেজ আপনার নির্ভরতা উপস্থিত হবে।
আরও তথ্য: এনপিএম-ইনস্টল
npm install express@latest --save --forceআমি যা চেয়েছিলাম ঠিক তাই ছিল
ইতিমধ্যে অনেক পার্থক্য উল্লেখ করা হয়েছে। এখানে আরও একটি:
চলমান npm installআপনার সোর্স ডিরেক্টরি উপরের বিভিন্ন স্ক্রিপ্ট চালানো হবে: prepublish, preinstall, install, postinstall। এই স্ক্রিপ্টগুলি কী করে তার উপর নির্ভর করে একটি npm installকেবল নির্ভরতা ইনস্টল করার চেয়ে যথেষ্ট বেশি কাজ করতে পারে।
আমার সবেমাত্র একটি ব্যবহারের কেস রয়েছে যেখানে prepublishকল হবে makeএবং Makefileযদি package.jsonআপডেট হয় তবে নির্ভরতা আনতে ডিজাইন করা হয়েছিল । কলটির npm installমধ্য থেকে কল করা Makefileঅসীম পুনরাবৃত্তি হতে পারে, কল npm updateকরার সময় ঠিকঠাক কাজ করা হত , সমস্ত নির্ভরতা ইনস্টল করা হয় যাতে makeসরাসরি বলা হলেও বিল্ডটি এগিয়ে যেতে পারে ।
redisমডিউল, এবং other_moduleএর একটি পুরোনো সংস্করণ প্রয়োজন redis, npm install other_moduleগ্যারান্টি করবে other_moduleপুরোনো সংস্করণ ব্যবহার করবে। এটি প্রয়োজনে যুক্ত করতে পারে other_module/node_modules/redis।
npm update: প্যাকেজ.জসনে থাকা সর্বশেষ নোড মডিউলগুলির সাথে ইনস্টল এবং আপডেট করুন
npm install: প্যাকেজ.জসনে সংজ্ঞায়িত নোড মডিউলগুলি ইনস্টল করুন (আপডেট ছাড়াই)
npm updateপ্রচুর পরিমাণে নির্ভরতা বাদ দেওয়া হবে package-lock.json। সমস্ত প্রয়োজনীয় প্যাকেজ উপলব্ধ থাকতে এবং package-lock.jsonসঠিক হতে, আমাকে সর্বদা npm installঠিক পরে চালানো উচিত npm update।
~1.3?