এক্সকোডে পুরানো / অব্যবহৃত ডেটা মডেল সংস্করণটি কীভাবে মুছবেন


163

আমি কীভাবে এক্সকোডে একটি পুরানো ডেটা মডেল মুছতে পারি? বিকল্পটি মেনুতে অক্ষম করা আছে। (আমি যে মডেলগুলি মুছতে চাই তা জনগণের কাছে প্রকাশিত হয়নি - সেগুলি অন্তর্বর্তীকালীন বিকাশ মডেল।)


আপনি কি "সম্পাদনা" মেনুতে থাকা "মুছুন" পছন্দটি অক্ষম করেছেন (আপনার পুরানো ডেটা মডেল ফাইলটি ফাইল পরিদর্শকটিতে নির্বাচিত হওয়ার সময়)? না আপনি পুরোপুরি অন্য কিছু বোঝাতে চান?
মাইকেল ডৌটারম্যান 21

হ্যাঁ, সম্পাদনা মেনুটির নীচে মুছে ফেলা পছন্দটি এবং নিয়ন্ত্রণ-ডান-ক্লিক মেনুতে (এবং যে কোনও মেনু আমি খুঁজে পেতে পারি) অক্ষম করা আছে। আমি জানি কিছু লোক পুরানো / অব্যবহৃত সংস্করণগুলি মুছতে পূর্বের এক্সকোডে যাচ্ছেন, তবে আমার কোনও ইনস্টল নেই।
SAHM

মাইকেল, আপনি কি এক্সকোড 4 এ করতে পারবেন?
SAHM

হ্যাঁ ... আমি কখনই দেখিনি যে আমার কোনও এক্সকোড 4 প্রকল্পের জন্য "মুছুন" মেনু বিকল্পটি অক্ষম।
মাইকেল ডাউটারম্যান

এক্সসিডিটামোডেলের জন্য আলাদাভাবে? এক্সসিডিটামোডেলস এক্সকোড 4 মুছে ফেলার ক্ষেত্রে অন্যদেরও একই সমস্যা রয়েছে .. .. আমি পোস্ট পোস্ট করা সমাধানটি দেখিনি।
SAHM

উত্তর:


374

এটি একটি হ্যাক, তবে এটি আমার পক্ষে কাজ করেছে:

  1. আপনি রাখতে চান এমন একটিতে এক্সকোডে মডেলের বর্তমান সংস্করণটি সেট করুন
  2. আপনার প্রকল্প থেকে .xcdatamodeld সরান (ডান ক্লিক -> মুছুন -> কেবলমাত্র রেফারেন্স সরান )
  3. ফাইন্ডারে .xcdatamodeld প্যাকেজটির সামগ্রীগুলি দেখান (ডান ক্লিক করুন -> প্যাকেজ বিষয়বস্তু দেখান)
  4. আপনি আর চান না এমন .xcdatamodel ফাইল (গুলি) মুছুন
  5. আপনার প্রকল্পে .xcdatamodeld ফাইলটি আবার যুক্ত করুন

এটি প্রকল্পের মেটাডেটা ফাইলগুলিতে ম্যানুয়ালি সংশোধন করার প্রয়োজনীয়তা দূর করে।


2
আমি এই কৌশলটি চেষ্টা করে দেখেছি যে আমার মডেল সংস্করণগুলির নামকরণের কারণে, মডেল সংস্করণটি ভুলভাবে পুনরায় সাজানো হয়েছিল এবং ভুল ডিফল্ট সংস্করণটি নির্বাচন করা হয়েছিল কারণ আমি প্রজেক্টে xcdatamodel ফাইলটি পুনরায় যুক্ত করেছি। এটি হতে পারে কারণ আমি 38 টি মডেল সংস্করণ পর্যন্ত আছি এবং আমি ডিফল্ট সংস্করণের নাম পরিবর্তন করি নি, তাই সংস্করণগুলির নাম দেওয়া হয়েছে "MY_APP 37.xcdatamodel"। আমি 38 টি মুছতে চেয়েছিলাম import আমদানিতে, এটি শাব্দিক ক্রমে টানা হয়েছিল, যার অর্থ "MY_APP 10.xcdatamodel" প্রথমে ছিল এবং ডিফল্ট হিসাবে নির্বাচিত হয়েছিল। আমার ক্ষেত্রে আদর্শ নয়।
মাইক

1
মাইক - আমার জন্য একই সমস্যা, যদিও আমি কোনও বড় নাটক ছাড়াই কোনও প্রবন্ধ সম্পাদনায় প্রজেক্ট.পিবিএক্সপ্রজটিতে পুনরায় অর্ডার করতে সক্ষম হয়েছি। তবুও আদর্শ নয়।
ইয়ান কারশওয়া

1
এটি এক্সকোড 5.1.1 এর সাথে কাজ করছে না। পূর্বে, অনেক ছোট ছোট মডেল পরিবর্তন এবং বর্ধিত মডেল সংস্করণ নম্বর সহ, লাইটওয়েট স্বতঃ-স্থানান্তর সঠিকভাবে কাজ করেছিল। তবে, এই পদ্ধতির ব্যবহার করে সমস্ত বহিরাগত "কেবলমাত্র উন্নয়ন" মডেলগুলি সরিয়ে দেওয়ার চেষ্টা করার পরে আমি ত্রুটিটি পেয়েছি: "ত্রুটি: মাইগ্রেশনের জন্য ম্যাপিংয়ের মডেলটি স্বয়ংক্রিয়ভাবে সন্ধান করতে বা খুঁজে পাওয়া যায় না"।
ডালমাজিও

1
6.4 এ রেফারেন্সগুলি সরানোর কোনও বিকল্প নেই। এটি সবেমাত্র মুছে ফেলা হয়েছিল। বাকি পদক্ষেপগুলি মনে হয়েছিল কাজ করেছে
noobsmcgoobs

1
এটি Xcode 10.2.1 এ কাজ করে বলে মনে হচ্ছে। আমার স্থানান্তর হ'ল কিছু বৈশিষ্ট্যর নাম পরিবর্তন হয়েছিল তাই বড় কিছু নয়।
গ্যাভিন

35

আমি সবেমাত্র এটি করার প্রয়োজন খুঁজে পেয়েছি। আমি তখন একটি নতুন মডেল সংস্করণ তৈরি করেছি তখন বুঝতে পেরেছিলাম যে আমার সর্বোপরি এর দরকার নেই। এক্সকোড থেকে এটি মুছে ফেলার কোনও উপায় নেই (যা আমি খুঁজে পেতে পারি) তা আবিষ্কার করে আমি অবাক হয়েছি। তবুও, এটি সরাতে আমি নিম্নলিখিতগুলি করেছি:

প্রথমে আমি নিশ্চিত করেছিলাম এটি আমার বর্তমান মডেল সংস্করণ নয়। তারপরে আমি ফাইন্ডারে গিয়ে আমার * .xcdatamodeld ফাইলটি পেয়েছি। রাইট ক্লিক করুন এবং এতে প্যাকেজ সামগ্রীগুলি প্রদর্শন করুন। সেখানে আপনি আসল মডেল ফাইলটি খুঁজে পাবেন এবং এটি মুছতে পারেন।

এটি এখনও এটি এক্সকোড থেকে অপসারণ করে না এবং এটি ফাইল এবং গোষ্ঠীতে লাল দেখাবে। এটি হতে আটকাতে ফাইন্ডারে ফিরে যান এবং আপনার মূল * .xcodeproj ফাইলটিতে প্যাকেজ সামগ্রী দেখান (আপনি এটির প্রথম ব্যাকআপ পেয়েছেন তা নিশ্চিত করতে পারেন)। সেখানে প্রজেক্টটি খুলুন এবং সম্পাদনা করুন p আমার জন্য এটি দুটি পৃথক লাইনে হাজির হয়েছিল। আমি এই লাইনগুলি সরিয়ে দিয়েছি এবং এখন এটি এক্সকোড থেকে পুরোপুরি সরানো হয়েছে।


1
@ ড্যানিয়েল_উইড, হ্যাঁ, আমি নিজেও এটি কীভাবে করতে পারি তা খুঁজে পেয়েছি তবে সন্ধান করুন। এটি লাইনে কিছু সমস্যা সৃষ্টি করতে পারে ... আমাকে বেশ কয়েকবার এটি পুনরায় করতে হয়েছিল, এটি প্রায়শই সক্রিয় এবং অ-সক্রিয় সংস্করণগুলির স্যুইচিং শেষ করে দেয় প্রায়শই আপনি যখন সঠিক সংস্করণটি পুনরায় সেট করেন তখন এটি এটিকে সরিয়ে দেয় না তালিকার শীর্ষে (কখনও কখনও) যা আরও সমস্যার কারণ হয়! যদিও ইনপুট জন্য অনেক ধন্যবাদ। এটি উদ্ভট বলে মনে হচ্ছে যে তারা এই ক্ষমতাটি সরিয়ে ফেলবে - আমাদের কখনই .xcodeproj ফাইলে যেতে হবে না!
SAHM

2

এটি পুরো মডেলটি সরিয়ে ফেলা এবং আবার যুক্ত করার সময় ক্রম সমস্যাটি তৈরি না করে এক্সকোড 10.3 এ আমার জন্য কাজ করেছিল:

  1. আপনি মুছতে চাইছেন এমন কোনও মডেল সংস্করণ নির্বাচন করুন Select
  2. এক্সকোড থেকে .xcdatamodeld ফাইলটি ডান ক্লিক করুন এবং 'ফাইন্ডারে দেখান' নির্বাচন করুন।
  3. বন্ধ করুন
  4. ফাইন্ডারে, একই ফাইলটিতে ডান ক্লিক করুন এবং 'প্যাকেজ বিষয়বস্তু দেখান' নির্বাচন করুন।
  5. আপনি যে মডেলটি মুছতে চান তার নাম লিখুন, তারপরে ফাইন্ডার থেকে, এটি মুছুন।
  6. এখনও ফাইন্ডারে রয়েছে, প্রজেক্ট ফাইলে (.xcodeproj) নেভিগেট করুন)
  7. এটম বা অন্য কোনও সম্পাদক সহ রাইট-ক্লিক করুন এবং খুলুন ।
  8. 'প্রকল্প' ফলকটি ওপেন প্রজেক্ট.পিবিএক্সপোজ ফাইল থেকে।
  9. আপনি মুছে ফেলা মডেল নামযুক্ত সমস্ত লাইন সরান (উদাহরণ: "এবিসি 17.xcdatamodel")। আপনি নীচের মত দুটি লাইন পাবেন:

    9D88880323C545B800A789B9 / * এবিসি 17.xcdatamodel * / = {ইসা = পিবিএক্সফিল রেফারেন্স; সর্বশেষজ্ঞিতফাইলটাইপ = wrapper.xcdatamodel; পাথ = " এবিসি 17.xcdatamodel "; উত্সট্রি = ""; };

    9D88880323C545B800A789B9 / * এবিসি 17.xcdatamodel * /,

    নোট করুন যদি আপনি কোনও তৃতীয় লাইন পান তবে এটি এমন কিছু হবে:

    কারেন্ট ভার্সন = 9D88880323C545B800A789B9 / * এবিসি 17.xcdatamodel * /;

    তার মানে এটি বর্তমানে নির্বাচিত মডেল। এই লাইনটি কখনও মুছবেন না। কেবল পাঠ্যটিকে অন্য মডেল সংস্করণে পরিবর্তন করুন।

  10. এক্সকোড পুনরায় খুলুন।


-4

আমার উত্তর মোটেই ইস্যু-নির্দিষ্ট নয় তবে এটি দ্রুত এবং কার্যকর। গিট ব্যবহারকারীদের জন্য। আপনি কেবল অপরিবর্তিত পরিবর্তনগুলি বাতিল করতে পারেন।

git stash save --keep-index

তারপরে আপনি git stash dropযদি চান তবে কোনও আদেশ দিয়ে স্ট্যাশটি ফেলে দিতে পারেন।

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