मैं अपनी ~ / लाइब्रेरी / डेवलपर / Xcode / DerivedData निर्देशिका को सुरक्षित रूप से कैसे हटा सकता हूं?


90

मैं पुराने (बदली जाने योग्य) डेटा को निकालना चाहता हूं और DerivedData सामग्री एक संभावित उम्मीदवार लगती है। चूंकि यह नाम DerivedData है , मेरा मानना ​​है कि यह जानकारी है कि, यदि गायब है, तो एक निर्माण चरण के दौरान उत्पन्न होगा और यदि मौजूद है, तो उसी चरण के दौरान उपयोग किया जाता है। तब यह तर्कसंगत लगता है कि मैं किसी भी पुराने प्रोजेक्ट डेटा को बिना किसी डर के डिलीट कर सकता हूं और अगर मुझे कभी भी उस पुराने प्रोजेक्ट का निर्माण करना चाहिए, तो पहली बार सामान्य साइन की तुलना में अधिक समय लगेगा क्योंकि यह सभी व्युत्पन्न डेटा को फिर से बनाना है।

क्या मैं यहाँ गलत हूँ?


8
बहुत सावधान रहें कि जैसा कि जोशुआ बताते हैं, उस खूनी फ़ोल्डर में "बाद में डिबगिंग के लिए dSYM डेटा है ... यदि आप अपने एप्लिकेशन के तैनात संस्करणों को डीबग करने में सक्षम होना चाहते हैं तो हटाएं नहीं"
Fattie

शायद मुझे अपने उत्तर में कॉल करने के लिए जोर देने के अलावा हर एसओ मार्कअप ट्रिक का उपयोग करना चाहिए। : -D ब्लॉक-उद्धृत-स्टार-स्लेश-टिप्पणी-कोड-बोल्ड-इटैलिक-बुलेट-सूची, आदि
जोशुआ नोज़ी

17
@JoeBlow वास्तव में, जैसा कि यहोशू बताते हैं, यह अभिलेखागार निर्देशिका है जिसमें "बाद में डिबगिंग के लिए dSYM डेटा" शामिल है। अभिलेखागार निर्देशिका एक है भाई की DerivedData निर्देशिका है, जो यह एक ही स्तर पर है, नीचे का मतलब है ~/Library/Developer/Xcode, के रूप में DerivedData , तो "उस खूनी फ़ोल्डर" (DerivedData) करता नहीं dSYM डेटा होते हैं और यह की सामग्री को सुरक्षित रूप से हटाया जा सकता है।
11 दिसंबर

4
जब भी मैं एक नया संस्करण जारी करता हूं, मैं Xcode से .xcarchive को अपने git रेपो में कॉपी करता हूं और इसे संस्करण नियंत्रण में रखता हूं - यह एक अच्छा तरीका है जो हमेशा पुराना हो सकता है। एक विशेष मशीन के Xcode निर्देशिकाओं के आधार पर .dSYM के बिना।
बिल

जवाबों:


123

व्युत्पन्न डेटा फ़ोल्डर सभी मध्यवर्ती निर्माण जानकारी, debug- और रिहाई से बनाया लक्ष्य है, साथ ही अपनी परियोजना के सूचकांक में शामिल है। यह उपयोगी आप अजीब सूचकांक समस्याओं (कोड पूरा होने के सही काम नहीं कर रहा है, लगातार फिर से अनुक्रमण, या बस एक धीमी गति से परियोजना) हैं तो व्युत्पन्न डेटा को हटाने के लिए। संपूर्ण फ़ोल्डर को हटाने से Xcode 4 के बारे में सभी प्रोजेक्ट के लिए यह जानकारी समाप्त हो जाती है।

अभिलेखागार फ़ोल्डर (व्युत्पन्न डाटा का एक भाई) अपने लक्ष्यों की संग्रहीत रूप में शामिल है। यही है, एक रिलीज़ बिल्ड और साथ ही बाद में डीबगिंग के लिए dSYM डेटा। यदि आप अपने अनुप्रयोग के परिनियोजित संस्करणों को डीबग करने में सक्षम होना चाहते हैं, तो आपको इसे नहीं हटाना चाहिए

आप आयोजक विंडो खोलकर और प्रोजेक्ट्स टैब का चयन करके किसी दिए गए प्रोजेक्ट के लिए व्युत्पन्न डेटा को न्यूड कर सकते हैं। वांछित परियोजना का चयन करें और व्युत्पन्न डेटा पथ के बगल में हटाएं बटन पर क्लिक करें। यह समस्या परियोजनाओं के लिए एक "सर्जिकल स्ट्राइक" की अधिक है।


1
ज़रूर। कमांड लाइन पर जाएं और "मैन आरएम" टाइप करें - पागल हो जाएं। :-)
जोशुआ नोज़ी

9
आह। मुझे पता है rm। मैं परियोजना से जुड़े फ़ोल्डर को हल करने का एक तरीका खोजना चाहता था, जैसे ~/Library/Developer/Xcode/DerivedData/MyProject-hghjhjhkjh/। सबसे आसान तरीका मुझे XCode वरीयताओं के माध्यम से प्रोजेक्ट फ़ोल्डर के सापेक्ष DerivedData फ़ोल्डर को सेट करना है।
21

4
बस एक त्वरित नोट: XCode 6.x में , projectsअपनी स्वयं की विंडो में हैं (आयोजक नहीं)।
Olie

1
मुझे आपका सैन्य शब्दजाल XD
जोश

1
FWIW बहुत सारे नए वितरण उपकरण (AppCenter, HockeyApp, Crashlytics, आदि) आपको dSYM फ़ाइलों को सौंपने के लिए कहता है ताकि आपको उन्हें स्वयं स्टोर न करना पड़े।
हनी

38

बिल्ड-टाइम के दौरान 'व्युत्पन्न डेटा' की सामग्री उत्पन्न होती है। आप इसे सुरक्षित रूप से हटा सकते हैं। 'व्युत्पन्न डेटा' को हटाने के लिए नीचे दिए गए चरणों का पालन करें:

  1. Xcode का चयन करें -> वरीयताएँ

चरण 1

  1. यह पॉप-अप विंडो खोलेगा। ' स्थान ' टैब चुनें। लोकेशन सब-टैब में आप पथ के आगे ' व्युत्पन्न डेटा ' पर क्लिक कर सकते हैं ।

चरण 2

  1. यह will Derived Data ’राइट क्लिक और डिलीट फोल्डर वाला ओपन-अप फोल्डर होगा।

चरण 3


इसलिए जब मेरा ऐप सिम्युलेटर में है, लेकिन कोड से नहीं चल रहा है और अगर मैं हटाऊं और फिर से कोड से चलाऊं, तो क्या इससे कोई समस्या होगी?
मंथन

@ मंथन: नहीं, इससे कोई मुद्दा नहीं बनेगा।
जयप्रकाश दुबे

30

हां, वे डेटा बिल्ड समय के दौरान उत्पन्न होते हैं और आप चाहें तो उन्हें हटा सकते हैं, इसका मुद्दा नहीं।

जब आप फिर से निर्माण करेंगे तो इसे फिर से बनाया जाएगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.