সুরকারের সাথে একটি একক গ্রন্থাগার কীভাবে আপডেট করবেন?


311

আমার এসএফ 2 বিতরণ (ডক্ট্রাইনফাইচার্স) এর জন্য আমাকে কেবল 1 টি প্যাকেজ ইনস্টল করতে হবে।

আমি যখন দৌড়ান

php composer.phar update

আমি পাই

  - Updating twig/twig (dev-master 39d94fa => v1.13.0)
    The package has modified files:
    M CHANGELOG
    M doc/filters/batch.test
    M doc/filters/index.rst
    M doc/filters/url_encode.rst
    M doc/functions/index.rst
    M doc/tags/index.rst
    M doc/tests/index.rst
    M lib/Twig/Autoloader.php
    M lib/Twig/Compiler.php
    M lib/Twig/CompilerInterface.php
-10 more files modified, choose "v" to view the full list

এটি প্রদর্শিত হয় শেষ বিকাশকারী বিক্রেতার ভিতরে প্রচুর ফাইল সম্পাদনা করে।

এই কাছাকাছি পেতে, আমি চেষ্টা করেছি

php composer.phar update <package_name>

তবে তাতে কাজ হবে বলে মনে হচ্ছে না। আমি কীভাবে কম্পোজারজেসন থেকে কেবল একটি লাইব্রেরি আপডেট / ইনস্টল করতে পারি?


আপনি সঠিক কমান্ড ব্যবহার করছেন। আপনি আমাদের আপনার দেখাতে পারেন composer.json?
चीजম্যাকফ্লাই

দয়া করে আমার উত্তরে প্রদত্ত আদেশগুলি দিয়ে চেষ্টা করুন অন্যথায় দয়া করে আপনার প্রাপ্ত ত্রুটির একটি বিবরণ সরবরাহ করুন (যেমন সুরকার যদি অভিযোগ করেন তবে সুরকার আউটপুট)
নিকোলাই ফ্রিলিচ

আপনার রচয়িতা। জসন কোনও প্রকল্পের বিকল্প কাঁটাচামচ উল্লেখ করতে পারে।
আইকনোক্লাস্ট

আমি আমার ল্যারাভেল প্রকল্পে একটি নির্দিষ্ট নির্ভরতা আপডেট করেছি এবং স্পষ্টভাবে ইনস্টল করার জন্য নির্দিষ্ট উপাদানটি নির্দিষ্ট করেছিলাম: সুরকার আপডেট লারাভেলক্লিকটিভ / এইচটিএমএল। কাজ করে মনে হয়েছিল।
মার্কো 31'15

উত্তর:


526

doctrine/doctrine-fixtures-bundleসংস্করণ 2.1.*এবং সর্বনিম্ন স্থিতিশীলতার সাথে ইনস্টল @devকরতে এটি ব্যবহার করুন:

composer.phar require doctrine/doctrine-fixtures-bundle:2.1.*@dev

তারপরে শুধুমাত্র এই একক প্যাকেজ আপডেট করতে:

composer.phar update doctrine/doctrine-fixtures-bundle

9
সহায়ক হতে পারে: -vvv দিয়ে আপডেট / ইনস্টল ইনস্টল (ভার্বোজ মোড: কমপোজারফার আপডেট -vvv প্যাকেজ / প্যাকেজ) মাঝে মাঝে একটি ইন্টারেক্টিভ প্রম্পট প্রদর্শিত হবে যা অন্যথায় লুকানো থাকতে পারে
তিমাহ 22

1
অন্যান্য প্যাকেজগুলিতে ত্রুটি থাকলে কী হবে? (আমার ক্ষেত্রে ইনস্টলেশন বন্ধ হয়ে গেছে)।
টমাস ডেকাউক্স

2
প্রয়োজন সম্পর্কে কী আলাদা প্যাকেজের আপডেট ট্রিগার করে?
হ্যাক্রে

1
আপনি ঠিক কি জানতে চান? আপনি কি আরও বিশেষ হতে পারেন দয়া করে? আপনি কি আরও জানতে চান যে এটি ঘটতে পারে অন্য কোনও প্যাকেজ - স্পষ্টতই requireনির্ভরতা হিসাবে আগে বা পূর্বে ডাউনলোড করা ছিল - composer require <package>:<version-constraint>@<stability-flag>কমান্ডটি চালানোর সময় স্বয়ংক্রিয়ভাবে আপডেট হয়ে যায় ?
নিকোলাই ফ্রিলিচ

7
> কম্পোজার.ফার আপডেট মতবাদ / মতবাদ-ফিক্সচার-বান্ডিল এটি অন্যান্য সমস্ত প্যাকেজগুলিকেও আপডেট করে ((
পোদ্দারোক

184

আপনি যদি কেবল কয়েকটি প্যাকেজ আপডেট করতে চান এবং সমস্ত না, আপনি সেগুলি তালিকাভুক্ত করতে পারেন:

php composer.phar update vendor/package:2.* vendor/package2:dev-master

গুচ্ছ প্যাকেজগুলি একবারে আপডেট করতে আপনি ওয়াইল্ডকার্ডগুলিও ব্যবহার করতে পারেন:

php composer.phar update vendor/*
  • --prefer-উত্স : sourceউপলব্ধ থেকে প্যাকেজ ইনস্টল করুন ।
  • --prefer-dist : distউপলব্ধ থেকে প্যাকেজ ইনস্টল করুন ।
  • --ignore-প্ল্যাটফর্ম-reqs : উপেক্ষা করা php, hhvm, lib-*এবং ext-*প্রয়োজনীয়তা ও এমনকি যদি স্থানীয় মেশিন এই মেটান না ইনস্টলেশন বাধ্য। platform কনফিগারেশন অপশনটিও দেখুন ।
  • --dry-run : আসলে কিছুই না করে কমান্ড সিমুলেট করুন।
  • - দেবদেব : তালিকাভুক্ত প্যাকেজ ইনস্টল করুন require-dev(এটি ডিফল্ট আচরণ)।
  • --no-dev : তালিকাভুক্ত প্যাকেজ ইনস্টল করা বাদ দিনrequire-dev । অটোলোডার প্রজন্ম autoload-devনিয়মগুলি এড়িয়ে চলে ।
  • - কোন-অটোলোয়াডার : স্বয়ংক্রিয়তা প্রজন্মকে এড়িয়ে যায়।
  • - না-স্ক্রিপ্টস : কম্পোজারজেজেসনে সংজ্ঞায়িত স্ক্রিপ্টগুলির সম্পাদনা এড়িয়ে যায়।
  • --no-plugins : প্লাগইন অক্ষম করে।
  • - কোন অগ্রগতি : অগ্রগতি প্রদর্শন সরিয়ে দেয় যা কিছু টার্মিনাল বা স্ক্রিপ্টগুলির সাথে বিশৃঙ্খলা সৃষ্টি করতে পারে যা ব্যাকস্পেস অক্ষরগুলি পরিচালনা করে না।
  • --optimize-autoloader (-o) : পিএসআর-0/4 স্বতঃআপনার সাথে ক্লাসম্যাপে রূপান্তর করুন একটি দ্রুত অটোলয়েডার। এটি বিশেষত উত্পাদনের জন্য প্রস্তাবিত, তবে এটি চালাতে কিছুটা সময় নিতে পারে তাই এটি বর্তমানে ডিফল্টরূপে করা হয় না।
  • - লক: লক ফাইলের মেয়াদ শেষ হওয়ার বিষয়ে সতর্কতা দমন করতে শুধুমাত্র লক ফাইল হ্যাশ আপডেট করে।
  • --with- নির্ভরতা : শ্বেত তালিকাভুক্ত প্যাকেজগুলির সমস্ত নির্ভরতা শ্বেত তালিকাতে যুক্ত করুন।
  • - পছন্দ -স্থিতিশীল : নির্ভরতার স্থিতিশীল সংস্করণগুলি পছন্দ করুন।
  • - পূর্ব-নিম্নতম : নির্ভরতার নিম্নতম সংস্করণ পছন্দ করুন। প্রয়োজনীয়তার ন্যূনতম সংস্করণগুলি পরীক্ষার জন্য দরকারী, যা সাধারণত ব্যবহৃত হয় --prefer-stable

দয়া করে নোট করুন যে জেডএসএইচ ব্যবহারকারীদের তাদের vendor/*উদ্ধৃতি চিহ্নগুলিতে মোড়ানো প্রয়োজন হতে পারে :composer update "vendor/*"
জিরো দ্য

51

ইনস্টল, আপডেট এবং প্রয়োজনীয়তার মধ্যে পার্থক্য

নিম্নলিখিত পরিস্থিতি অনুমান করুন:

composer.json

"parsecsv/php-parsecsv": "0.*"

রচনা ফাইল

  "name": "parsecsv/php-parsecsv",
            "version": "0.1.4",

সর্বশেষ মুক্তি 1.1.0। সর্বশেষ 0.*মুক্তি0.3.2

ইনস্টল: composer install parsecsv/php-parsecsv

এটি 0.1.4লক ফাইলে উল্লিখিত সংস্করণটি ইনস্টল করবে

হালনাগাদ: composer update parsecsv/php-parsecsv

এটি এতে প্যাকেজ আপডেট করবে 0.3.2। আপনার সুরকার.জসনকে সম্মানের সাথে সর্বাধিক সংস্করণ। এন্ট্রি composer.lockআপডেট করা হবে।

প্রয়োজন: composer require parsecsv/php-parsecsv

এটি নতুন সংস্করণ আপডেট বা ইনস্টল করবে 1.1.0। আপনার composer.lockফাইল এবং composer.jsonফাইল পাশাপাশি আপডেট করা হবে।


দুর্দান্ত, তাই সীমাবদ্ধ সংস্করণের মধ্যে একটি প্যাকেজ রিফ্রেশ করার জন্য এটি composer update author/packageএবং তারপরেcomposer install author/package
উইলিয়াম রান্ডোকুন

@ উইলিয়ামআরন্দোকুন আপনি যদি এটির আগে ইনস্টল করেছেন তবে কেবল composer update packageযথেষ্ট, এর পরে ইনস্টল কল করার দরকার নেই
অ্যাডাম

1
ঠিক আমি যা খুঁজছি ভাল ব্যাখ্যা। upvoted
কাপিটান

14

আপনি নতুন প্যাকেজ ইনস্টল করতে মূলত নিম্নলিখিতটি করতে পারেন।

php composer.phar require

তারপরে টার্মিনাল আপনাকে অনুসন্ধানের জন্য প্যাকেজের নাম লিখতে বলবে।

$ Search for a package []: //Your package name here

তারপরে টার্মিনালটি প্যাকেজের সংস্করণ জিজ্ঞাসা করবে (আপনি যদি সর্বশেষতম সংস্করণটি খালি ছেড়ে চান)

$ Enter the version constraint to require (or leave blank to use the latest version) []: //your version number here

তারপরে আপনি কেবল রিটার্ন কী টিপুন। টার্মিনালটি অন্য প্যাকেজটির জন্য জিজ্ঞাসা করবে, আপনি অন্য কোনও ইনস্টল করতে না চাইলে কেবল রিটার্ন কী টিপুন এবং আপনার কাজ শেষ হয়ে যাবে।


6

আপনি যে কোনও মডিউলটির নির্ভরতা সহ আপডেট করতে নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন

composer update vendor-name/module-name --with-dependencies

5

সুরকারের দ্বারা সুরক্ষিত সংস্করণ সীমাবদ্ধতার মধ্যে সর্বশেষ সংস্করণে ইতিমধ্যে ইনস্টল করা একটি প্যাকেজ আপডেট করার বিষয়টি নিশ্চিত করতে আপনি সুরক্ষিত করেছেন। জসসন প্যাকেজটি বিক্রেতার কাছ থেকে সরান এবং তারপরে সম্পাদন করুন:

php composer.phar update vendor/package

4
আপনি এই পোস্টে একই পরামর্শ পাবেন: github.com/composer/composer/issues/3112 । PS: ব্যাখ্যা ছাড়াই ডাউন ভোট করা এত সহজ এবং এতটা অকেজো।
সসুনাবে

5

শুধু ব্যবহার

composer require {package/packagename}

মত

composer require phpmailer/phpmailer

যদি প্যাকেজটি বিক্রেতা ফোল্ডারে না থাকে .. সুরকার এটি ইনস্টল করুন এবং যদি প্যাকেজটি উপস্থিত থাকে তবে সর্বশেষ সংস্করণে সুরকার আপডেট প্যাকেজ উপস্থিত থাকে।


2

কারণ আপনি নির্দিষ্ট প্যাকেজটি ইনস্টল করতে চেয়েছিলেন "আমার আমার এসএফ 2 বিতরণের জন্য (ডক্ট্রাইনফাইচার্স) কেবলমাত্র 1 টি প্যাকেজ ইনস্টল করা দরকার।"

php composer.phar require package/package-name:package-version যথেষ্ট হবে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.