2012-06-08 9 views
54

मैं एक शेल स्क्रिप्ट का उपयोग कर कमांड लाइन xcodebuild कर रहा हूँ। मेरी समस्या यह है कि यदि मैं एक बार xx.xcodeproj फ़ाइल खोलता और बंद करता हूं और फिर उस आदेश का उपयोग करता है तो यह अच्छी तरह से काम करता है।क्या प्रोजेक्ट.xcworkspace फ़ाइल महत्वपूर्ण है?

किसी भी तरह अगर मैं फ़ाइल में परिवर्तन में गहराई से मिलता हूं, तो यह project.xcworkspace एकमात्र फ़ाइल है जो बदल गई है। क्या यह फ़ाइल मान्य है और क्या मुझे इसे संस्करण नियंत्रण में देखना चाहिए? क्या इससे कोई समस्या आएगी?

मैंने सुना है कि यह .pbxproj जितना महत्वपूर्ण है: क्या यह सच है?

मुझे कोई वैध दस्तावेज नहीं मिला जो xcode प्रोजेक्ट फ़ाइलों में विभिन्न फ़ाइलों की भूमिकाओं और जिम्मेदारियों के बारे में बात करता है। कृपया लिंक प्रदान करें जो मुझे समझने में मेरी सहायता करें।

उत्तर

89

project.xcworkspace कार्यक्षेत्र या परियोजनाओं का वर्णन करने वाली फ़ाइलों की निर्देशिका है। हालांकि यहां कुछ उत्तरों से संकेत मिलता है कि यह अनावश्यक है और स्रोत नियंत्रण के लिए अनदेखा किया जाना चाहिए, मैं सहमत नहीं हूं, लेकिन यह आपके पर्यावरण का उपयोग करने के तरीके पर अत्यधिक निर्भर होगा। आम तौर पर, project.xcworkspace निर्देशिका की सामग्री में contents.xcworkspacedata फ़ाइल है, जो आपकी प्रोजेक्ट में शीर्ष-स्तरीय इकाइयों के रूप में शामिल की गई परियोजनाओं को सूचीबद्ध करती है, xcuserdata निर्देशिका, जिसमें प्रत्येक उपयोगकर्ता की सेटिंग्स (स्रोत कोड controL के लिए अनदेखा किया जाना चाहिए), और xcshareddata , जो कि एक परियोजना साझा करने वाले उपयोगकर्ताओं द्वारा साझा किया गया डेटा है, और स्रोत नियंत्रण में होना चाहिए।

उन वातावरणों में जहां आप वर्कस्पेस साझा नहीं करते हैं, या जहां आप सरल कार्यस्थानों का उपयोग करते हैं, आप इन्हें भी अनदेखा कर सकते हैं, हालांकि वातावरण में जहां आप एक ही कार्यक्षेत्र में संबंधित परियोजनाएं डालते हैं और उस कॉन्फ़िगरेशन को साझा करते हैं, तो आप शायद चाहें इन्हें रखो

+6

यदि आप कोको पॉड्स (पॉड इंस्टॉल) का उपयोग करते हैं तो project.xcworkspace फ़ाइल बनाई जाती है। यह एक फोड वर्कस्पेस बनाता है और आपको प्रोजेक्ट फ़ाइल की बजाय प्रोजेक्ट फ़ाइल को आगे बढ़ने की आवश्यकता होगी यदि आप चाहते हैं कि आपने अभी Pods के माध्यम से इंस्टॉल किया है। – LevinsonTechnologies

+6

@ लेविन्सन टेक्नोलॉजीज ओपी प्रोजेक्ट के 'Foobar.xcodeproj' शीर्ष-स्तरीय फ़ोल्डर के उपफोल्डर _within_ का जिक्र कर रहा है। वह उपफोल्डर _literally_ 'project.xcworkspace' नाम दिया गया है। कोकोपोड्स जो चीज बनाता है और जिसका आप उल्लेख कर रहे हैं वह एक और _top-level_ फ़ोल्डर है जिसे 'Foobar.xcworkspace' नाम दिया गया है जो 'Foobar.xcodeproj' के समान स्तर पर मौजूद है। दो चीजों को भ्रमित मत करो! मेरा अनुमान है कि एक्सकोड को हमेशा वर्कस्पेस की आवश्यकता होती है, और सबफ़ोल्डर कुछ प्रकार का "छुपा" वर्कस्पेस होता है जो एक्सकोड आपके लिए दृश्यों के पीछे बनाता है और बनाए रखता है जब तक कि आप केवल .xcodeproj के साथ काम करते हैं। – herzbube

संबंधित मुद्दे