2009-05-28 11 views
83

को यह सवाल understanding rebase, branch and merge, में और समस्याGit-धक्का मास्टर करने में असमर्थ Github

आप अपने GitHub खाते कैसे प्रतिबद्ध कर सकते हैं करने के लिए मेरी समस्या से संबंधित के रूप में आप अपने रिमोट सूची में एक टीम है है?

मुझे पता चला कि other people एक ही समस्या है। समस्या /etc/xinet.d/ से संबंधित प्रतीत होती है।

समस्या: Github पर मेरे मालिक शाखा करने के लिए अपने स्थानीय शाखा पुश करने के लिए

मैं चलाने

git push origin master 

मैं

fatal: 'origin' does not appear to be a git repository 
fatal: The remote end hung up unexpectedly 

त्रुटि संदेश मुझे उस शाखा का सुझाव प्राप्त असमर्थ 'मूल' मेरे स्थानीय गिट भंडार में नहीं है। इस तरह, गिट गिटूब से जुड़ना बंद कर देता है।

यह अजीब बात है, क्योंकि मैंने शाखा 'उत्पत्ति' को नहीं हटाया है।

मेरे Git पेड़

dev 
* master 
    ticgit 
    remotes/Math/Math 
    remotes/Math/master 
    remotes/origin/master 
    remotes/Masi/master 

है आप कैसे Github करने के लिए अपने स्थानीय शाखा धक्का कर सकते हैं, जब आप अपने स्थानीय Git में एक टीम की शाखा है?


वॉनसी का उत्तर मुख्य समस्या हल करता है। मैंने अपनी एसएसएच कुंजी को पासफ्रेयर लगाया।

मैं चलाने

$git push github master  

मैं

Permission denied (publickey). 
fatal: The remote end hung up unexpectedly 

मिलता ऐसा लगता है कि मैं किसी भी तरह Git के लिए पदबंध देने के लिए की जरूरत है।

आप कैसे Github ssh कुंजी पर भरोसा करने के बजाय अपना पासफ़्रेज़ के लिए पूछना कर सकते हैं?

+0

बस मेरे जवाब अद्यतन - अंत में, मैं यह जब एक नया भंडार ऑनसाइट बनाने Git धक्का में -u स्विच, प्रति GitHub निर्देशों सहित द्वारा हल।एसएसएच पैरामीटर सभी नहीं हैं। user.name और github.user भी महत्वपूर्ण हैं – VonC

+0

कुछ और एसएसएच कॉन्फ़िगरेशन चेक – VonC

+0

के साथ मेरा उत्तर दोबारा अपडेट किया गया "अनुमति अस्वीकार (publickey)।" वास्तव में इसका मतलब है कि आपने अपनी प्रकाशन का उपयोग करके लॉगिन करने का प्रयास किया था, और आपके प्रकाशन की अनुमति न होने की बजाय अनुमति अस्वीकार कर दी गई थी। –

उत्तर

96

क्या

$ git config --get-regexp '^(remote|branch)\.' 

रिटर्न करता है (अपने Git भंडार के भीतर क्रियान्वित)?

उत्पत्ति रिमोट गिट भंडार का जिक्र करने के लिए सिर्फ एक डिफ़ॉल्ट नामकरण सम्मेलन है।

यदि यह GitHub का उल्लेख नहीं करता (बल्कि अपने साथी खिलाड़ी भंडार, पथ के लिए एक रास्ता है जो अब वैध या उपलब्ध हो सकता है), सिर्फ एक और मूल इस Bloggitation entry

$ git remote add origin2 [email protected]:myLogin/myProject.git 
$ git push origin2 master 

(मैं में जोड़ने के लिए, की तरह वास्तव में नहीं बल्कि 'मूल' या 'origin2')


अनुमति अस्वीकृत (publickey) की तुलना में नाम 'GitHub' का प्रयोग करेंगे।
घातक: दूरस्थ अंत अप्रत्याशित रूप से

चेक काट दिया है, तो अपने GitHub पहचान सही ढंग से के रूप में the GitHub Help guide में उल्लेख किया है, तो अपने स्थानीय Git भंडार में घोषित किया जाता है। (दोनों user.name और github.name - और github.token)

फिर, stonean blog पता चलता है (करता है Marcio Garcia):

$ cd ~/.ssh 
$ ssh-add id_rsa 

Aral Balkan जोड़ता है: एक कॉन्फ़िग फ़ाइल बनानी

समाधान bottom of the OS X section of this page पर उल्लिखित अनुसार ~/.ssh/के तहत कॉन्फ़िगरेशन फ़ाइल बनाने का था।

यहाँ फ़ाइल मैं कहा, पृष्ठ पर निर्देशों के अनुसार है, और मेरी धक्का फिर से काम करना शुरू किया:

Host github.com 
User git 
Port 22 
Hostname github.com 
IdentityFile ~/.ssh/id_rsa 
TCPKeepAlive yes 
IdentitiesOnly yes 

तुम भी

ssh -v [email protected] 

का परिणाम पोस्ट कर सकते हैं करने के लिए गिटहब एसएसएच कनेक्शन आपको क्यों अस्वीकार करता है, इस बारे में अधिक जानकारी।

यह भी जांचें कि आपने अपनी सार्वजनिक कुंजी सही ढंग से दर्ज की है (इसे '==' के साथ समाप्त करने की आवश्यकता है)।
अपनी निजी कुंजी पेस्ट न करें, लेकिन आपका सार्वजनिक। एक सार्वजनिक कुंजी कुछ ऐसा दिखाई देगा:

ssh-rsa AAAAB3<big string here>== [email protected] 

(नोट: यदि आप अपने ssh चाबी के लिए एक पदबंध का इस्तेमाल कैसे किया यह एक पदबंध के बिना आसान होगा)

चेक भी यूआरएल जब धक्का इस्तेमाल किया ([email protected]/..., git://github.com/...)

जांचें कि आपके पास उपयोग करने और अपनी कुंजी कैश करने के लिए एक एसएसएच एजेंट है।

इस प्रयास करें:

$ ssh -i path/to/public/key [email protected] 

अगर वह काम करता है, तो इसका मतलब है अपने प्रमुख अपने ssh ग्राहक द्वारा GitHub को नहीं भेजा जा रहा है।

+1

@ वॉनसी: धन्यवाद! समस्या सुलझ गयी। –

+1

बहुत बुरा मैं आपको एक से अधिक बार वोट नहीं दे सकता! मुझे दो हफ्ते में यह समस्या दो बार थी और जब भी मैं इसे एसओ पोस्ट मिला, तो इसे हर बार Google पर चला गया। धन्यवाद! :) –

+1

+ ssh -v [email protected] चाल के लिए। बहुत साफ़। – nalply

1

मुझे लगता है कि Git त्रुटि संदेश भ्रामक होने का एक और मामला है। आम तौर पर जब मैंने यह त्रुटि देखी है तो यह एसएसएच समस्याओं के कारण है। क्या आपने अपनी सार्वजनिक एसएसएच कुंजी को अपने जीथ्यूब खाते में जोड़ा था?

संपादित करें: इसके अलावा, xinet.d मंच पोस्ट एक सेवा के रूप Git-डेमॉन चलाने के लिए बात कर रहा है, ताकि लोगों को अपने सिस्टम से खींच सकता है। जिथब को धक्का देने के लिए गिट-डिमन चलाने के लिए जरूरी नहीं है।

+1

मैंने अपने जीथ्यूब खाते में अपनी सार्वजनिक कुंजी जोड़ दी। - मेरी गिट में रिमोट शाखा जोड़ने के बाद समस्या शुरू हुई। –

+1

मैंने एक नई एसएसएच कुंजी जोड़ी बनाई। मैंने गिथब को नई कुंजी चिपका दी और पुराने को गिथूब से हटा दिया। एक ही समस्या बनी रहती है। –

28

यह आपके रिमोट के साथ एक समस्या है। जब आप git push origin master करते हैं, origin रिमोट है और master वह शाखा है जिसे आप दबा रहे हैं।

जब आप ऐसा करते:

git remote 

मैं सूची शर्त origin शामिल नहीं है। मूल दूरस्थ करने के लिए फिर से जोड़:

git remote add origin [email protected]:your_github_username/your_github_app.git 

या, यदि यह मौजूद है, लेकिन प्रारूप गलत होता है:

git remote rm origin 
git remote add origin [email protected]:your_github_username/your_github_app.git 
1

मैं एक ही समस्या है और मैं सिर्फ ~/.ssh/id_rsa की सामग्री जोड़ गिटहब में मेरे खाते में .pub। उसके बाद बस पुनः प्रयास करें git push origin master, यह काम करना चाहिए।

10

वॉनसी का जवाब सबसे अच्छा है, लेकिन मेरे लिए काम करने वाला हिस्सा बहुत ही सरल था और कई अन्य संभावित उत्तरों के बीच दफनाया गया था। यदि आप मेरे जैसे हैं, तो आप "रेल के साथ शुरू करना" ट्यूटोरियल चलाते समय इस समस्या में भाग गए और आपने अपनी सार्वजनिक/निजी एसएसएच कुंजी सेट नहीं की थी।

यदि हां, तो इस कोशिश:

  1. $>cd ~/.ssh

  2. $>ls

  3. ls के उत्पादन known_hosts और कुछ नहीं है तो यहां जाएँ: http://help.github.com/mac-key-setup/ और से निर्देशों का पालन शुरू "एक कुंजी उत्पन्न करना" खंड और नीचे।

उन निर्देशों को चलाने के बाद, मेरे "गिट पुश मूल मास्टर" कमांड ने काम किया।

+0

मैं बस इस पेज को देख रहा था। बहुत बहुत धन्यवाद! = डी –

+0

यह मेरी समस्या हल हो गया। मेरा ओएस मैक ओएस एक्स है, और मैं "रेल 3 ट्यूटोरियल पर रूबी" पुस्तक का पालन कर रहा था, और जब मैं 'गिट पुश मूल मास्टर' करने की ज़रूरत थी तो मैं धारा 1.3.4 पर अटक गया था। यह पहली बार गिट स्थापित करने वाला था और रेल। उम्मीद है कि इससे अन्य लोगों की मदद मिली। – sivabudh

4

मुझे एक ही समस्या है और मुझे लगता है कि फ़ायरवॉल गिट प्रोटोकॉल को अवरुद्ध कर रहा है। तो अंत में मुझे लाने और धक्का देने के लिए https: // का उपयोग करना होगा। हालांकि यह हमेशा पासवर्ड दर्ज करने के लिए संकेत होगा ...

यहाँ उदाहरण क्या मेरे लिए काम कर रहा है (सिर्फ उन नहीं कर सकते उपयोग Git के साथ साझा करने के लिए: // प्रोटोकॉल :)

git fetch https://[user-name]@github.com/[user-name]/[project].git 

अगर काम करता है ऊपर, आप मूल हटाने और

git remote rm origin 
git remote add origin https://[user-name]@github.com/[user-name]/[project].git 
+1

यदि आप चाहें तो आप '~/.netrc' फ़ाइल स्टोर को अपने लिए पासवर्ड स्टोर कर सकते हैं। इसका उपयोग 'कर्ल' द्वारा किया जाता है, जो कि HTTP (एस) स्थानान्तरण के लिए गिट का उपयोग करता है, यदि आपको इसका उपयोग करने के बारे में विशिष्टताओं को देखने की आवश्यकता है। – Arrowmaster

+1

@Arrowmaster: ध्यान दें कि यदि आप विंडोज़ पर हैं, तो आपको '~/_netrc' ('' _'', नहीं ''.'') – VonC

+0

टिप्पणियों के लिए धन्यवाद, मैं कोशिश करूँगा! – ken

0

से बदल सकते हैं वे याद करने के लिए महत्वपूर्ण बात यह है कि 'मूल' मूल्य आप का उपयोग करने की आवश्यकता हो सकती है नहीं है ... यह मेरे लिए काम किया जब मैं 'मूल' की जगह रेपो के नाम के साथ।

0

एक संभावना है कि उपर्युक्त उत्तरों का पता नहीं है कि आपके पास अपने खोल से एक एसएसएच पहुंच नहीं हो सकती है। यही है, आप एक नेटवर्क में हो सकते हैं (कुछ कॉलेज नेटवर्क ऐसा करते हैं) जहां एसएसएच सेवा अवरुद्ध है। उस स्थिति में आप न केवल जीथब सेवाएं प्राप्त करने में सक्षम होंगे बल्कि किसी अन्य एसएसएच सेवाएं भी प्राप्त कर पाएंगे। आप जांच सकते हैं कि क्या यह किसी अन्य एसएसएच सेवा का उपयोग करने की समस्या है। यह मेरे साथ मामला था।

0

मुझे यह समस्या थी और इसे हल करने के लिए विभिन्न समाधानों की कोशिश की गई (कॉन्फ़िगरेशन फ़ाइल, डीबग एसएसएच आदि)। Github new Repository

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

  • कोई संबंधित समस्या नहीं^_^