অন্যান্য নির্ভরতা স্পর্শ না করে কীভাবে একটি একক পোড আপডেট করবেন


201

আমি বুঝি যে নিম্নলিখিত কমান্ড একটি একক শুঁটি আপডেট হবে: pod update <podname>। তবে এটি পূর্বে ইনস্টল করা অন্যান্য পোডের (পডগুলি আপডেট কমান্ডের অন্তর্ভুক্ত ছিল না) এর নির্ভরতাও আপডেট করে। একটি একক পোড আপডেট করার এবং অন্য সমস্ত নির্ভরতা একা ছেড়ে যাওয়ার কোনও উপায় আছে কি?


1
পার্থক্য আপনি বুঝতে আবশ্যক প্রথম বুঝতে কি একটি podfile.lockহয়। লিঙ্ক এবং এটি উল্লেখ করা ভিডিও দেখুন।
মধু

উত্তর:


285

আপনার কাছে কোকোপডসের সর্বশেষতম সংস্করণ ইনস্টল করা আছে তা নিশ্চিত করুন। $ pod update PODসম্প্রতি চালু হয়েছিল।

দেখুন আরও তথ্যের জন্য এই সমস্যা থ্রেড :

$ পোড আপডেট

আপনি যখন চালনা করবেন pod update SomePodName, কোকোপডস তালিকাভুক্ত সংস্করণটি বিবেচনায় না নিয়ে পড সামারপডনামের আপডেট হওয়া সংস্করণটি অনুসন্ধান করার চেষ্টা করবে Podfile.lock। এটি পডটিকে সর্বশেষতম সংস্করণে আপডেট করবে (যতক্ষণ না এটি আপনার পোডফাইলে সংস্করণ বিধিনিষেধের সাথে মেলে)।

আপনি যদি কোনও পডের নাম ছাড়াই পোড আপডেট চালনা করেন তবে কোকোপডগুলি আপনার পোডফাইলে তালিকাভুক্ত প্রতিটি পোডকে সম্ভাব্য সর্বশেষতম সংস্করণে আপডেট করবে।


19
@ ম্যাটটিউর প্রতিক্রিয়াটির জন্য ধন্যবাদ, আমি কোকোপডসের সর্বশেষতম সংস্করণ পেয়েছি (0.34.2) এবং আমি চেষ্টা করেছি $ pod update SomePodName। তবে এমন কিছু ঘটনা রয়েছে যেখানে কোকোপডগুলি অন্য পোডের নির্ভরতা আপডেট করার চেষ্টা করবে। দীর্ঘ গল্প সংক্ষিপ্ত, সোমারপডনেম একমাত্র পোড নয় যা কিছু ক্ষেত্রে আপডেট হবে।
কেন

2
@ ম্যাট্ট, আপনি কি জানেন না যে ইতিমধ্যে ইনস্টল হওয়াগুলি আপডেট না করে নির্দিষ্ট পোড ইনস্টল করবেন?
শামসুদ্দিন

1
আমি যখন কিছুটা নির্ভরতা সংশোধন করি এবং চালিত pod installকরি তখন এটির মূল সংস্করণে ফিরে আসে ver তবে আমি আমার পরিবর্তনগুলি হারাতে চাই না
শামসদ্দিন

2
@ ম্যাট্ট, আমি যে নির্ভরতাগুলির কথা উল্লেখ করছিলাম তা হ'ল পোডের নির্ভরতা নয় যা আপডেট হচ্ছে। আমি মনে করি যে আমি প্রশ্নটি যথেষ্টভাবে কাঠামোগত করি নি তবে ধরে নিই আমরা পড এ আপডেট করি, পোড এ এর ​​নির্ভরতা নয় এমন আরও কয়েকটি শুঁটিও আপডেট হয়। এটি উপায় দ্বারা একটি পুরাতন প্রশ্ন তাই নিশ্চিত না যে এটি তখন থেকেই স্থির করা হয়েছে কিনা ..
কেন

8
pod updateসমস্ত কিছু স্পর্শ। এটি টিনের উপরে যা বলে তা করে না এবং এটি অত্যন্ত হতাশাব্যঞ্জক। এলোমেলোভাবে অন্য পোড থেকে শিরোনামগুলি সরিয়ে দেয় যা আপনি এটি স্পর্শ করতে বলেন নি ইত্যাদি
লূক

185

বিদ্যমান পডফাইলে আপডেট না করে একটি পড ইনস্টল করতে-> আপনার পোডফাইলে সেই পোড যুক্ত করুন এবং ব্যবহার করুন:

pod install --no-repo-update

নির্দিষ্ট পোড ব্যবহার সরিয়ে / আপডেট করতে:

pod update POD_NAME

পরিক্ষিত!


49

এটা 2015

তাই pod update SomePodকোকোপডের সর্বশেষতম সংস্করণে সমস্ত কিছু স্পর্শ করার কারণে , আমি একটি কার্যবিধির সন্ধান পেয়েছি।

পরবর্তী পদক্ষেপগুলি অনুসরণ করুন:

  1. SomePodথেকে সরানPodfile

  2. চালান pod install

শুঁটি এখন SomePodআমাদের প্রকল্প এবং Podfile.lockফাইল থেকে সরানো হবে।

  1. ফিরে রাখুন SomePodমধ্যেPodfile

  2. pod installআবার দৌড়াও

এবার আমাদের পডের সর্বশেষতম সংস্করণটি ইনস্টল করা হবে এবং এতে সংরক্ষণ করা হবে Podfile.lock


এছাড়াও আপনি কৌতুক ব্যবহার করতে পারেন আমি এখানে উত্তর stackoverflow.com/questions/29901337/...
Qiulang

17
আপনি pod update somepod anotherpod thirdpodএকবারে একাধিক
শুঁটি

এটা খুব চালাক। আপনি এগুলি দুটি স্বতন্ত্র পদক্ষেপে করছেন এবং অন্যান্য নির্ভরতা অক্ষুণ্ন রাখতে পডফিল.লককে নির্ভর করছেন। আমি কেবল ভাবছি যদি SomePodএটির সর্বশেষ নির্ভরতাগুলিতে আপডেট হয় তবে এটি সর্বশেষের সাথে ভাগ করে নেওয়া নির্ভরতা আপডেট করবে না anotherPod? পোডলক যা আছে তা বিবেচনা না করেই কি তা ঘটবে না? অন্যথায় এটি প্রয়োজনীয়তাগুলি পূরণ করতে সক্ষম হবে নাSomePod
হানি

28

কথা মাত্র:

pod install - নতুন পোড ইনস্টল করার জন্য,

pod update - বিদ্যমান পোড আপডেট করার জন্য,

pod update podName - অন্যান্য শুঁক স্পর্শ না করে শুধুমাত্র নির্দিষ্ট পোড আপডেট করার জন্য,

pod update podName versionNum - অন্যান্য শুঁক স্পর্শ না করে নির্দিষ্ট পোড আপডেট / ডাউন করার জন্য


আপনি কি এর podপরিবর্তে বোঝাতে চেয়েছিলেন git?
কেন

কখনও কখনও এটি হয় না, কেন জানি না। ওয়ার্কআউট সমাধান: 1. পডফিল 2। পড ইনস্টল থেকে নির্দিষ্ট পোড সরান 3. পোডফিল নির্দিষ্ট পোড পুনরায় যুক্ত করুন 4. পোড ইনস্টল
যোনিভ

21

শুধু একটি ছোট নোটিশ।

pod update POD_NAME

এই পডটি ইতিমধ্যে ইনস্টল করা থাকলে কেবলমাত্র কাজ করবে। অন্যথায় আপনাকে সেগুলির সাথে আপডেট করতে হবে

pod update

হুকুম


আপনি এখনও pod installপ্রথমে ব্যবহার করতে পারেন যা অন্যকে স্পর্শ না করে কেবল অনুপস্থিত একটি ইনস্টল করবে। যদিও আপনি ইনস্টল করেনি এমন কোনও পড আপডেট করতে চান না কেন, সেখানে কি আছে?
aramusss

18

tl; dr ব্যবহার:

pod update podName

কেন? নীচের পড়া.

  • pod updateসম্মান করবে না podfile.lock। এটি এটি ওভাররাইড করবে।
  • pod install শ্রদ্ধা করবে podfile.lock

এই চিত্রটি পার্থক্যগুলি আরও ভালভাবে বুঝতে সহায়তা করে:

এখানে চিত্র বর্ণনা লিখুন


প্রধান সমস্যা থেকে আসে ~>ওরফে আশাবাদী অপারেটর

এর সঠিক সংস্করণ ব্যবহার করা Podfileযথেষ্ট নয়

কিছু মনে হতে পারে যে তাদের মধ্যে তাদের pods সঠিক সংস্করণ নির্দিষ্ট করে Podfile, মত pod 'A', '1.0.0'গ্যারান্টি যথেষ্ট যে প্রত্যেক ব্যবহারকারীর দলের অন্য জাতির মতো একই সংস্করণ হবে।

তারপরে তারা এমনকি pod updateকোনও নতুন শুঁটি যুক্ত করার পরেও এটি ব্যবহার করতে পারে , এই ভেবে যে এটি অন্য পোডগুলি কখনই আপডেট করার ঝুঁকি নেবে না কারণ এগুলি একটি নির্দিষ্ট সংস্করণে নির্দিষ্ট করা আছে Podfile

তবে প্রকৃতপক্ষে, আমাদের উপরের দৃশ্যে থাকা ইউজার 1 এবং ইউজার 2 সর্বদা তাদের সমস্ত পোডের ঠিক একই সংস্করণ পাবে তা নিশ্চিত করার পক্ষে এটি যথেষ্ট নয়।

একটি সাধারণ উদাহরণ হ'ল পডের Aপডের উপর নির্ভরতা থাকে A2- A.podspecহিসাবে ঘোষণা করা হয় dependency 'A2', '~> 3.0'। এই ক্ষেত্রে, 'A', '1.0.0'আপনার পোডফাইলে পোড ব্যবহার করা ব্যবহারকারী1 এবং ব্যবহারকারী 2 উভয়ই সবসময় পোড এ এর ​​সংস্করণ 1.0.0 ব্যবহার করতে বাধ্য করবে তবে:

  • ইউজার A21 সংস্করণে পোড দিয়ে শেষ হতে পারে 3.4(কারণ এটি A2সেই সময়ের সর্বশেষতম সংস্করণ ছিল)
  • যখন ইউজার 2 pod installপ্রকল্পে যোগদানের পরে চালায় , তখন তারা A2সংস্করণে পড পেতে পারে 3.5(কারণ এর মধ্যে রক্ষণাবেক্ষণকারী A2একটি নতুন সংস্করণ প্রকাশ করেছেন)। এজন্য প্রতিটি দলের কম্পিউটারে প্রতিটি পডের একই সংস্করণ সহ প্রতিটি দলের সদস্য কাজ করার বিষয়টি নিশ্চিত করার একমাত্র উপায় হ'ল বনাম Podfile.lockব্যবহার এবং সঠিকভাবে ব্যবহার করা ।pod installpod update

উপরের অংশগুলি পড ইনস্টল বনাম পড আপডেট থেকে প্রাপ্ত

আমিও অত্যন্ত পর্যবেক্ষক সুপারিশ কি একটি করে podfile.lockDo


9

আমি পুরোপুরি কাজগুলি ব্যবহার করছি cocoapods version 1.0.1এবং ব্যবহার করছি pod update name-of-pod। অন্য কোনও পোড আপডেট হয় না, কেবলমাত্র আপনি প্রবেশ করুন one


2

এটি কিছুটা আউটলারের এবং এটি ওপি যা করছে তা হওয়ার সম্ভাবনা নেই pod update <podname>তবে আপনি যদি আপনার কম্পিউটারে কোনও স্থানীয় পোড ব্যবহার করেন তবে সব ক্ষেত্রেই কাজ করবে না।

এই পরিস্থিতিতে, pod updateপডস্পেক ফাইলে যদি কোনও পরিবর্তন হয় তবে কেবলমাত্র কাজটিই কাজটি শুরু করবে। তবে, একটি পরিবর্তন pod installকরা পাশাপাশি কাজ করার অনুমতিও দেবে ।

এই পরিস্থিতিতে আপনি কেবলমাত্র একটি অক্ষরের মাধ্যমে বর্ণনা বা সংক্ষিপ্তসার হিসাবে কিছু ছোটখাটো পরিবর্তন করতে পারেন এবং তারপরে আপনি ইনস্টল বা আপডেট আদেশটি সফলভাবে চালাতে পারেন can

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