Git ठीक से काम करने के लिए ऐप्पल के Xcode कमांड लाइन टूल्स के भीतर कई निर्भरताओं पर निर्भर करता है। यदि आपके पास Xcode टूल्स इंस्टॉल नहीं हैं, तो जब भी आप Git कमांड चलाने का प्रयास करेंगे तो आपको xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools) त्रुटि मिलेगी।
यह गाइड बताता है कि यह त्रुटि क्या है और आप इसे क्यों देख सकते हैं। हम आपको एक उदाहरण परिदृश्य के माध्यम से ले जाएंगे ताकि आप पता लगा सकें कि इस समस्या को कैसे ठीक किया जाए।
Git क्या है?
Git सबसे लोकप्रिय संस्करण नियंत्रण प्रणाली है। Git आपके द्वारा फ़ाइलों में किए गए परिवर्तनों को ट्रैक करता है, ताकि आपके पास इस बात का रिकॉर्ड हो कि क्या किया गया है और यदि आवश्यक हो तो विशिष्ट संस्करणों पर वापस जा सकते हैं। Git कई लोगों के परिवर्तनों को एक स्रोत में मर्ज करने की अनुमति देकर सहयोग की सुविधा भी देता है।
इसलिए, चाहे आप कोड लिखें जिसे केवल आप देखेंगे या टीम में काम करेंगे, Git आपके लिए उपयोगी है।
प्रो टिप: अपने Mac को प्रदर्शन समस्याओं, जंक फ़ाइलों, हानिकारक ऐप्स और सुरक्षा खतरों के लिए स्कैन करें जो सिस्टम समस्याओं या धीमे प्रदर्शन का कारण बन सकते हैं।
Git एक सॉफ़्टवेयर है जो आपके कंप्यूटर पर चलता है। आपकी फ़ाइलें, साथ ही उनका इतिहास, आपके कंप्यूटर पर सहेजे जाते हैं। आप फ़ाइलों और उनके संशोधन इतिहास की एक प्रति ऑनलाइन होस्ट (जैसे GitHub या Bitbucket) पर भी संग्रहीत कर सकते हैं। एक केंद्रीय स्थान जहां आप अपने परिवर्तनों को अपलोड कर सकते हैं और दूसरों से परिवर्तनों को डाउनलोड कर सकते हैं, आपको अन्य डेवलपर्स के साथ अधिक आसानी से सहयोग करने की अनुमति देता है। Git स्वचालित रूप से परिवर्तनों को मर्ज करने में सक्षम है, जिससे दो लोग एक ही फ़ाइल के विभिन्न हिस्सों पर काम कर सकते हैं और फिर उन परिवर्तनों को एक-दूसरे का काम खोए बिना मर्ज कर सकते हैं!
Git एक सॉफ़्टवेयर है जिसे कमांड लाइन (टर्मिनल) या ग्राफिकल यूजर इंटरफेस (GUI) वाले डेस्कटॉप ऐप के माध्यम से एक्सेस किया जा सकता है, जैसे Sourcetree।
XCode टूल्स क्या हैं?
Xcode Mac का विकास और डिबगिंग वातावरण है, और यह Mac OS X और iOS एप्लिकेशन के लिए आवश्यक विकास फ़ाइलें प्रदान करता है।
इससे पहले कि वे Mac पर सॉफ़्टवेयर विकसित कर सकें, डेवलपर्स को पहले Xcode कमांड लाइन टूल्स इंस्टॉल करने होंगे।
ऐप्पल प्रोग्रामर के लिए Xcode नामक एक पूर्ण विकास वातावरण प्रदान करता है। यदि आप macOS, iOS, tvOS, या watchOS के लिए सॉफ़्टवेयर विकसित कर रहे हैं तो आपको पूर्ण Xcode एप्लिकेशन इंस्टॉल करना होगा।
यह प्री-इंस्टॉल नहीं आता, लेकिन आप इसे ऐप्पल डेवलपर वेबसाइट या Mac ऐप स्टोर से प्राप्त कर सकते हैं।
यदि आप ऐप्पल डिवाइस के लिए सॉफ़्टवेयर विकसित नहीं कर रहे हैं तो आपको पूर्ण Xcode एप्लिकेशन की आवश्यकता नहीं होगी (यह 40GB से अधिक डिस्क स्थान लेता है!)।
इसके बजाय, आप Xcode कमांड लाइन टूल्स डाउनलोड और इंस्टॉल करेंगे। यह सॉफ़्टवेयर डेवलपर्स के लिए एक छोटा पैकेज है जिसमें टर्मिनल एप्लिकेशन में चलने वाले कमांड-लाइन टूल्स शामिल हैं।
ये टूल्स कंप्यूटिंग की शुरुआत से Unix ऑपरेटिंग सिस्टम पर प्रोग्रामर द्वारा उपयोग किए गए हैं, और वे लगभग सभी सॉफ़्टवेयर विकास की नींव हैं।
सौभाग्य से, Xcode कमांड लाइन टूल्स पैकेज केवल 1.2GB डिस्क स्थान लेता है।
Mac पर Xcode कमांड लाइन टूल्स इंस्टॉल करने के लिए आपके पास तीन विकल्प हैं:
- संपूर्ण Xcode पैकेज इंस्टॉल करें।
- टर्मिनल के माध्यम से Xcode कमांड लाइन टूल्स इंस्टॉल करें
- Homebrew इंस्टॉलेशन के माध्यम से Xcode कमांड लाइन टूल्स इंस्टॉल करें
जब तक आप ऐप्पल डिवाइस के लिए सॉफ़्टवेयर विकसित नहीं कर रहे हैं, हम पूर्ण Xcode पैकेज इंस्टॉल करने की अनुशंसा नहीं करते हैं। डाउनलोड में बहुत अधिक समय लगेगा और बहुत अधिक डिस्क स्थान लेगा। इसके बजाय, दो तेज़ विधियों में से एक को आजमाएं।
क्योंकि ऑपरेटिंग सिस्टम Unix पर आधारित है, सॉफ़्टवेयर विकास के लिए लंबे समय से मानक, macOS सॉफ़्टवेयर विकास के लिए सबसे लोकप्रिय प्लेटफॉर्म है।
यदि आप Xcode कमांड लाइन टूल्स इंस्टॉल करते हैं, तो आपके पास लगभग किसी भी ओपन सोर्स डेवलपमेंट टूल को जोड़ने के लिए एक ठोस आधार होगा।
Git xcrun: error: invalid active developer path त्रुटि क्या है?
विभिन्न macOS संस्करणों पर उपयोगकर्ताओं को टर्मिनल ऐप में git कमांड चलाने का प्रयास करते समय त्रुटि मिल रही थी - जैसे git pull, git push, git clone, git status, git branch, आदि।
कुछ Mac टर्मिनल उपयोगकर्ता यह पता लगा सकते हैं कि pip, HomeBrew, और अन्य कमांड लाइन टूल्स का उपयोग विफल हो जाता है या ठीक से काम नहीं करता है, एक त्रुटि संदेश के साथ जिसमें कहा जाता है "xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools)"। यदि ये कमांड लाइन टूल्स पहले काम करते थे तो macOS सिस्टम सॉफ़्टवेयर अपडेट के बाद काम करना बंद कर सकते हैं।
त्रुटि संदेश आमतौर पर पढ़ता है:
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
Xcrun: error: invalid active developer path (/library/developer/commandlinetools) के कारण
अधिकांश मामलों में, xcrun: error: invalid active developer path त्रुटि टर्मिनल ऐप में git कमांड चलाने का प्रयास करते समय एक अपडेट या अपग्रेड के बाद दिखाई दी। अधिकांश त्रुटियां हाल ही में बिग सुर में अपग्रेड किए गए Macs से संबंधित थीं।
उपरोक्त त्रुटि अधिसूचना स्वयं व्याख्यात्मक है। यह कहता है कि /Library/Developer/CommandLineTools पर पाया गया सक्रिय डेवलपर पथ अमान्य है। इसका मतलब है कि त्रुटि git से संबंधित नहीं है, बल्कि कमांड लाइन टूल्स से संबंधित है।
यह तब भी होता है जब कमांड लाइन टूल्स macOS पर इंस्टॉल होते हैं और पहले ठीक काम कर रहे थे। यदि त्रुटि आपके macOS को अपग्रेड करने के बाद दिखाई दी, तो अपने Mac पर "कमांड लाइन टूल्स" को पुनः इंस्टॉल करने से "कमांड लाइन टूल्स" इंस्टॉलेशन में पथ की समस्या हल होनी चाहिए।
Git Xcrun से कैसे निपटें: त्रुटि: अमान्य सक्रिय डेवलपर पथ
जब आप इस त्रुटि का सामना करते हैं तो सबसे पहले आपको टर्मिनल विंडो को बंद करके फिर से लॉन्च करना होगा। ऐप को पुनरारंभ करने के बाद, यह जांचने के लिए कमांड को फिर से चलाने का प्रयास करें कि क्या यह अब काम करता है। यदि त्रुटि एक गड़बड़ के कारण हुई थी, तो ऐप को रीबूट करने से इसे ठीक करना चाहिए।
आपको यह भी सुनिश्चित करना चाहिए कि टर्मिनल ऐप के पास कमांड चलाने के लिए पर्याप्त अनुमतियां हैं। एक नियमित कंसोल के बजाय एक उन्नत टर्मिनल विंडो खोलें ताकि आप एक्सेस मुद्दों में न पड़ें। यदि ये चरण मदद नहीं करते हैं, तो सब कुछ फिर से आजमाने से पहले अपने Mac को रीबूट करें। आउटबाइट मैकएरीज़ का उपयोग करके पहले अपने कंप्यूटर को ऑप्टिमाइज़ करने से जंक फ़ाइलों और अन्य छोटी समस्याओं से छुटकारा पाने में भी मदद मिलती है।
यदि त्रुटि इतनी लगातार है कि ये समस्या निवारण चरण काम नहीं करते हैं, तो नीचे दिए गए समाधानों का पालन करें।
इस समस्या को ठीक करने के लिए, Xcode इंस्टॉल करें। यदि आप iOS ऐप विकास में रुचि रखते हैं, तो आप पूर्ण संस्करण इंस्टॉल कर सकते हैं और यह इस समस्या को भी ठीक कर देगा। ऐप्पल डेवलपर साइट से Xcode .dmg फ़ाइल डाउनलोड करें।
यदि आप इसका बहुत अधिक उपयोग नहीं कर रहे हैं, तो आप Xcode के लिए कमांड लाइन टूल पैकेज ढूंढ सकते हैं और संबंधित .dmg फ़ाइल को डाउनलोड और इंस्टॉल कर सकते हैं। आप इसे ऐप्पल की डेवलपर साइट से डाउनलोड कर सकते हैं।
फिक्स #1: कमांड लाइन टूल्स इंस्टॉल या पुनः इंस्टॉल करें।
यदि आप कुछ भी डाउनलोड नहीं करना चाहते हैं और बस टर्मिनल में कुछ कमांड चलाकर इस समस्या को ठीक करना चाहते हैं, तो यहां आपके लिए समाधान है:
- अपना टर्मिनल एप्लिकेशन शुरू करें। आप किसी अन्य टर्मिनल एप्लिकेशन का भी उपयोग कर सकते हैं। macOS उपयोगकर्ताओं के लिए: टर्मिनल ऐप आपके एप्लिकेशन फ़ोल्डर के यूटिलिटीज फ़ोल्डर में पाया जा सकता है या इसे खोजने के लिए स्पॉटलाइट का उपयोग करें।
- टर्मिनल में, निम्न कमांड टाइप करें और कमांड लाइन टूल्स इंस्टॉल करने के लिए एंटर दबाएं: xcode-select –install
- यह वह कमांड है जिसे टर्मिनल में चलाया जा सकता है और यह Xcode के लिए कमांड लाइन टूल्स इंस्टॉल करेगा। आपको निम्न आउटपुट प्राप्त होना चाहिए: xcode-select: नोट: कमांड लाइन डेवलपर टूल्स के लिए इंस्टॉल अनुरोध किया गया
- इंस्टॉल बटन पर क्लिक करें।
- स्वीकार करें बटन पर क्लिक करके लाइसेंस अनुबंध स्वीकार करें।
इंस्टॉलेशन को अपना काम करने दें, इसे बाधित न करें। इसमें कुछ समय लग सकता है, इसलिए धैर्य रखें। अब टर्मिनल एप्लिकेशन को पुनरारंभ करें। मुझे टर्मिनल को पुनरारंभ नहीं करना पड़ा। लेकिन मुझे पता है कि कुछ मामलों में यह रीबूट के बिना काम नहीं करेगा।
अंत में, आप उस कमांड को फिर से टाइप कर सकते हैं जिसका उपयोग आपने त्रुटि संदेश प्राप्त करते समय किया था ताकि यह सुनिश्चित हो सके कि यह त्रुटियों के बिना चलता है। (मेरे मामले में कमांड git commit थी)
यदि आपको बताया जाता है कि डाउनलोड के लिए 7GB से अधिक स्थान की आवश्यकता है, तो कृपया ध्यान दें कि आपको ऐप्पल डेवलपर साइट से विशेष रूप से Xcode एप्लिकेशन डाउनलोड करने के लिए मजबूर किया जाएगा।
उपरोक्त कमांड समस्या को ठीक कर देगा यदि आप निम्न कमांड भी नहीं चलाते हैं:
xcode-select –reset
हालांकि यह आपकी समस्या को ठीक कर देगा, अगला कदम कमांड लाइन टूल्स के लिए पथ सेट करना हो सकता है ताकि Xcode के बिना चल सके: xcode-select –switch /Library/Developer/CommandLineTools
यदि आप Node.js और एक मॉड्यूल के साथ काम कर रहे हैं जिसके लिए नोड प्रकार की आवश्यकता है, तो आपको अपने टर्मिनल में निम्न चेतावनी मिल सकती है:
xcode-select: त्रुटि: टूल 'xcodebuild' के लिए Xcode आवश्यक है
लेकिन सक्रिय डेवलपर डायरेक्टरी '/Library/Developer/CommandLineTools' एक कमांड लाइन टूल्स इंस्टेंस है
यह त्रुटि तब होती है जब डेवलपर डायरेक्टरी जिसे xcodeselect इंगित करता है, / Library / Developer / CommandLineTools पर होती है जब पूर्ण नियमित Xcode की आवश्यकता होती है (तब होता है जब CommandLineTools को Xcode के बाद इंस्टॉल किया जाता है)। आप डेवलपर्स डायरेक्टरी को Xcode.app पर अपडेट करके इस समस्या को जल्दी से ठीक कर सकते हैं: sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
फिक्स #2: ऐप्पल डेवलपर डाउनलोड पेज से इंस्टॉल करें
यदि आपने टर्मिनल से कमांड लाइन टूल्स इंस्टॉल या पुनः इंस्टॉल किया है, अपने Mac को पुनरारंभ किया है, और त्रुटि बनी रहती है, तो आप ऐप्पल से सीधे DMG फ़ाइल का उपयोग करके कमांड लाइन टूल्स को मैन्युअली इंस्टॉल करने का भी प्रयास कर सकते हैं।
डाउनलोड तक पहुंचने के लिए आपको एक ऐप्पल आईडी की आवश्यकता है, फिर developer.apple.com पर जाएं और Xcode के लिए कमांड लाइन टूल्स (नवीनतम संस्करण) डाउनलोड करें और इसे मैन्युअली इंस्टॉल करें।
यदि आप Homebrew का उपयोग कर रहे हैं, तो आपको इसे अपडेट करने की आवश्यकता है। आपको Homebrew को पुनः इंस्टॉल नहीं करना चाहिए या हटाकर फिर से इंस्टॉल नहीं करना चाहिए, एक साधारण अपडेट काम करना चाहिए।
फिक्स #3: टर्मिनल को Xcode का उपयोग करने के लिए बाध्य करें
यदि आपके Mac पर Xcode इंस्टॉल है, तो आप उपरोक्त इंस्टॉलेशन चरणों को छोड़ सकते हैं और टर्मिनल को Xcode के कमांडलाइन टूल्स का उपयोग करने के लिए बाध्य कर सकते हैं। ऐसा करने के लिए, आपको निम्न कमांड का उपयोग करने की आवश्यकता है:
- sudo xcode-select –reset
- sudo xcodebuild -license
यदि आपके पास Xcode के कई संस्करण हैं, तो आप इस कमांड के साथ 원하는 संस्करण चुन सकते हैं: xcode-select –switch /Applications/Xcode.app
आप कमांड लाइन टूल्स को Xcode के बिना चलाना भी चुन सकते हैं: xcode-select –switch /Library/Developer/CommandLineTools
समापन
यह समस्या ऑपरेटिंग सिस्टम को अपडेट करने के बाद हो सकती है और पहले से चल रही सेवाओं को लंबे समय तक बेकार कर सकती है। हालांकि, उपरोक्त समाधान को आपके द्वारा सामना की जा रही xcrun: error: invalid active developer path (/library/developer/commandlinetools) समस्या को ठीक करना चाहिए। यदि इनमें से कोई भी आपके लिए काम नहीं करता है, तो बेझिझक नीचे टिप्पणी अनुभाग में अपना त्रुटि संदेश साझा करें।