2013-02-24 24 views
5

मैं OSX 10.8.2 पर हूँ और मैं Git Git v1.7.4.4कैसे पर OSX 10.8

मैं सिर्फ एक दूरस्थ सर्वर पर Git स्थापित चल रहा हूँ और यह संस्करण 1.11 है Git के अपने संस्करण को अद्यतन करने के लिए। एक्स। मैं सॉफ्टवेयर के समान संस्करण को चलाने के लिए चाहता हूं लेकिन मैं अपने लैपटॉप पर गिट को अपडेट करने का तरीका नहीं समझ सकता।

मैं here सूचीबद्ध चरणों का है, जो git-OSX-installer डाउनलोड करने के निर्देश का पालन करने, स्थापित (जो आसानी से भाग गया) और फिर कर चलाने का प्रयास किया:

$ sudo mkdir -p /usr/local/bin 
$ sudo ln -s /usr/local/git/bin/git /usr/local/bin/git 

लेकिन इस के बाद मैं git --version करते हैं और यह अभी भी 1.7 है। 4.4। क्या मैंने अभी एक ही संस्करण को पुनर्स्थापित किया था? या मैंने कहीं और नया संस्करण स्थापित किया है?

मैं इसी तरह के प्रश्न पढ़ रहा हूं और मुझे लगता है कि मुद्दा यह है कि ओएसएक्स जहाजों को एक अलग स्थान पर गिट के पुराने संस्करण के साथ स्थापित किया गया है, जहां गिट-ओएसएक्स-इंस्टॉलर या मैक पोर्ट इसे रखेंगे। लेकिन मुझे यकीन नहीं है कि इसे कैसे ठीक किया जाए। सलाह के लिए आपको अग्रिम शुक्रिया।

अद्यतन:

which git रिटर्न: /usr/bin/Git

echo $PATH रिटर्न: /opt/स्थानीय/बिन:/opt/स्थानीय/sbin:/usr/स्थानीय/rvm/रत्न /ruby-1.9.3-p194/bin:/usr/local/rvm/gems/[email protected]/bin:/usr/local/rvm/rubies/ruby-1.9.3-p194/bin :/usr/स्थानीय/rvm/बिन:/usr/bin:/बिन:/usr/sbin:/sbin:/usr/स्थानीय/बिन:/usr/स्थानीय/Git/बिन:/opt/एस एम/बिन:/ऑप्ट/एसएम/पीकेजी/सक्रिय/बिन:/ऑप्ट/एसएम/पीकेजी/सक्रिय/sbin

अद्यतन 2:

ESL ~/Downloads$ export PATH=/usr/local/bin:$PATH 
ESL ~/Downloads$ which git 
/usr/local/bin/git 
ESL ~/Downloads$ 
ESL ~/Downloads$ git --version 
git version 1.8.1.3 

ऐसा प्रतीत होता है कि मैंने स्थानीय में नया गिट संस्करण स्थापित किया है। तो क्या मुझे अपने .bash_profile में export PATH=/usr/local/bin:$PATH जोड़ना चाहिए? क्या यह एक समस्या है कि गिट के दोनों संस्करण स्थापित हैं?

मैंने अपने ~/.bash_profile के नीचे export PATH=/usr/local/bin:$PATH जोड़ा और अब गिट रन का नया संस्करण जोड़ा।

+0

'कौन सा गिट' प्रदर्शन कर रहा है? 'echo $ PATH' के परिणाम में'/usr/local/bin' है? –

+0

मैंने उन दोनों को ऊपर दिए गए प्रश्न में जोड़ा। – emersonthis

उत्तर

16

चूंकि/usr/bin आपके पथ में/usr/local/bin से पहले दिखाई देता है,/usr/bin में निष्पादन योग्य गिट को प्राथमिकता दी जाएगी। अपने खोल में इस प्रयास करें:

export PATH=/usr/local/bin:$PATH 
which git 

एक तरफ ध्यान दें पर, मैं दृढ़ता से इस तरह के MacOS

+0

मैंने कुछ संबंधित प्रश्नों के साथ उपरोक्त आपके परीक्षण के परिणाम जोड़े। – emersonthis

+0

कोई समस्या नहीं है कि आपके पास दोनों संस्करण स्थापित हैं - आप उस निर्यात लाइन को अपने ~/.bashrc में जोड़ सकते हैं और उसके बाद से/usr/local/bin में संस्करण हमेशा प्राथमिकता लेते हैं। –

+0

इस बिंदु पर, क्या मुझे अभी भी होमब्रू पर विचार करना चाहिए या बस मेरे पास क्या छोड़ना चाहिए? मुझे पैकेज प्रबंधकों के बारे में बहुत कुछ पता नहीं है, इसलिए मुझे यह जानकर उत्सुकता होगी कि आपने इसकी दृढ़ता से अनुशंसा क्यों की। – emersonthis

3

मुझे सिगविन (विंडोज़ के लिए संकलित लिनक्स पर्यावरण) में एक समान समस्या थी। मैं

which git 

करना होगा और यह स्रोत से संकलित अद्यतन Git के सही स्थान के साथ जवाब होगा, लेकिन वास्तव में इसका इस्तेमाल नहीं होता जब तक मैं

hash -r git 

मुझे समझ का दावा नहीं करते किया यह क्या हुआ या इसे क्यों किया जाना था, लेकिन उसके बाद git --version ने '1.8.2.rc0.22.gb3600c3' के साथ उत्तर दिया, जो अब स्पष्ट रूप से सिगविन के साथ पुराना गिट नहीं भेजा गया था। यह ओएसएक्स पर लागू नहीं हो सकता है, लेकिन अगर which git अद्यतन बाइनरी का पता लगा रहा है तो इसे एक शॉट दें।

+0

मैंने प्रश्न में अपना 'कौन सा गिट' और '$ पाथ' जोड़ा। क्या यह आपको सलाह देता है? – emersonthis

+0

वास्तव में, बस 'हैश-जी गिट' आज़माएं और फिर देखें कि 'गिट - वर्जन' आपको क्या देता है। – Ehryk

+0

धन्यवाद! मुझे पता नहीं था कि खोल निष्पादन योग्य पथों को संग्रहीत करने के लिए हैश-टेबल का उपयोग करता है। आप खोल को पुनरारंभ भी कर सकते हैं, यह हैश तालिका को भी साफ़ कर देगा। अधिक जानकारी के लिए: http://crashingdaily.wordpress.com/2008/04/21/hashing-the-executables-a-look-at-hash-and-type/ – HyBRiD

17

एक मैक OSX मशीन पर कोई द्विआधारी अद्यतन करने के लिए सबसे अच्छा तरीका है पर इस रूप में प्रतिष्ठानों के प्रबंधन के लिए homebrew का उपयोग कर की सलाह देते हैं विशेष रूप से मैक (ए। डीएमजी या .पीकेजी डाउनलोड) के लिए विकसित पैकेज (ओं) का उपयोग करना है।

गिट के मामले में यह है: http://git-scm.com/download/mac (इस लिंक पर क्लिक करने से स्वचालित रूप से मैक के गिट के नवीनतम संस्करण को डाउनलोड करना चाहिए)।

हालांकि, इस मामले में (कम से कम मेरी 10.8.3 मैकबुक के लिए) यह काफी पूरी कहानी नहीं था: - जो पूरा उद्देश्य IMO धरा पैकेज /usr/local/git में Git स्थापित करता है और उसके बाद $PATH के अंत में उस पथ कहते हैं ।

मैं मैन्युअल रूप से संशोधित किया है मेरी .bashrc तो क्या इसके बाद के संस्करण सुझाव के लिए इसी तरह कुछ है करने के लिए के रूप में:

export PATH=/usr/local/git/bin:$PATH 

एक बार जब आप ऐसा करते हैं, आप Git का सही संस्करण देखना चाहिए उठाया जा रहा है:

$ git --version 
git version 1.8.2.2 

ध्यान दें कि यह किसी भी ऐप के लिए काम नहीं करेगा जो इंटरैक्टिव रूप से लॉन्च किया गया है (उदाहरण के लिए, डॉकिंग बार के माध्यम से) - आपको डाउनलोड किए गए पैकेज में प्रदान की गई अतिरिक्त स्क्रिप्ट को चलाने की आवश्यकता होगी; निर्देशों के लिए README देखें।

+0

क्या इस बदलाव को पूर्ववत करने का कोई आसान तरीका है? मैं बस परीक्षण करना चाहता हूं कि मैंने कोशिश की है कि एक और तरीका काम करता है। – reem